Строки в Java
Как удалить запятую в конце строки
[Как удалить запятую в конце строки]Допустим, у вас есть строка, оканчивающаяся запятой:
Как сгенерировать случайную строку с шестнадцатеричным значением
[Как сгенерировать случайную строку с шестнадцатеричным значением]Как добавить перенос строки в Java
[Как добавить перенос строки в Java]Что такое перенос строки
Перенос строки, он же перенос каретки это один или несколько спецсимволов, означающие окончание текущей строки символов и перевод картеки на новую строку. В зависимости от операционной системы используются разные спецсимволы. Например, в Windows используются спецсимволы CR + LF:
Как узнать длину строки в Java
[Как узнать длину строки в Java]Строки в Java – это стандартный тип. Строка являет собой набор символов. Как же узнать длину строки в Java?
Поиск строки в списке List

Если у вас есть список строк (
List<String>) и вам требуется найти определённую строку в этом списке (или проверить, что список содержит нужную строку), вы можете это легко сделать несколькими способами:- С помощью стримов (этот способ подходит для Java 8 и выше)
- С помощью итерирования по списку
Поиск строк с помощью стримов
Данный способ доступен для версии Java 8 и выше:
List<String> langs = new ArrayList<>(); langs.add("Java"); langs.add("JavaScript"); langs.add("Kotlin"); langs.add("Scala"); langs.add("Groovy"); langs.add("Python"); List<String> result = langs.stream() .filter(lang -> lang.contains("Java")) .collect(Collectors.toList()); System.out.println(result);В консоль выведется:
[Java, JavaScript]Чтобы учитывать полные совпадения строки, можно заменить эту строчку в коде:
.filter(lang -> lang.contains("Java"))на следующую:
.filter(lang -> lang.equals("Java"))В этом случае вывод в консоль будет следующим:
[Java]Если же нужно просто проверить, есть ли искомая строка в списке, можно упростить код:
boolean result = langs.stream().anyMatch(lang -> lang.equals("Java"));
Конкатенация строк в Java
[Конкатенация строк в Java]Строки интенсивно используются в программах на Java. Строки представляют собой последовательность символов. Для создания строки, обычно используется строковый литерал. Одна из особенностей строк в Java – они иммутабельны, то есть после создания они не могут быть изменены. Все операции над строками порождают новые строки, но никогда не меняют уже созданные. Это приводит к тому, что при интенсивных операциях над строками создаётся и высвобождается излишнее количество объектов с очень коротким временем жизни. Для решения этой проблемы были созданы
StringBufferи несколько позднее –StringBuilder.Конкатенация с помощью оператора +
В самом простом случае можно объединить строки, воспользовавшись оператором сложения:
String hello = "Hello"; String world = " World"; System.out.println(hello + world);
Результатом выполнения данного кода будет вывод строки
"Hello World"в консоль. Это самый простой и в большинстве случаев подходящий способ конкатенации строк в Java.StringBuilderиStringBuffer, в отличие от классаString, созданы для того, чтобы иметь возможность изменять своё строковое значение. Оба эти класса инкапсулируют в себе массив байтов, в который добавляются новые значения. Когда длины массива недостаточно, выделяется память под массив большей размерности и все данные записываются в него.Для чего используется StringBuilder
Обычно StringBuilder используется, если нужно создать строку в несколько этапов, используя несколько операций конкатенации, или же в цикле:
StringBuilder s = new StringBuilder(); s.append("Hello"); s.append(" World"); s.append(" in Java!"); System.out.println(s.toString());С помощью метода
StringBuilder.append()мы изменяем значение, хранящееся внутри экземпляраStringBuilder. Эта операция очень дешёвая в отличие создания новых объектов.Давайте сравним производительность создания в цикле множества объектов
Stringи использованиеStringBuilder. У нас есть два цикла:long start = System.currentTimeMillis(); String s1 = ""; for (int i=0; i< 50000; i++) { s1 = s1 + "a"; } System.out.println(System.currentTimeMillis() - start); long start2 = System.currentTimeMillis(); StringBuilder sb = new StringBuilder(); for (int i=0; i< 50000; i++) { sb.append("a"); } System.out.println(System.currentTimeMillis() - start2);
Как заменить символ в строке
[Как заменить символ в строке]Строки в Java представляют собой последовательности символов. Причём строки в Java иммутабельны, то есть неизменяемы – вы не можете изменить строку после её создания. Значит ли это, что невозможно изменить символ в строке?
Как удалить пробелы из строки
[Как удалить пробелы из строки]Для удаления пробелов в начале и конце строки есть метод String.trim:
String input = " апельсины , мандарины , лимоны "; String output = input.trim(); System.out.println(output);
В результате вы получите строку без пробелов в начале и конце:
апельсины , мандарины , лимоны
Как удалить пробелы из строки
Как создать строку
[Как создать строку]Строки – неизменяемые (иммутабельные) классы в языке программирования Java. Строки используются везде – для указания всевозможных путей к файлам, настроек приложения, логинов и паролей (хотя для паролей рекомендуется использовать байтовые массивы, для большей безопасности приложения).
