Строки, которые широко используются в Java-программировании, представляют собой последовательность символов. В языке программирования Java строки рассматриваются как объекты.
Платформа Java предоставляет класс String для создания и управления строками.
Создание строк
Самый прямой способ создать строку — написать
String greeting = "Hello world!";
Всякий раз, когда он встречает строковый литерал в вашем коде, компилятор создает объект String со значением в этом случае «Hello world!».
Как и с любым другим объектом, вы можете создавать объекты String, используя ключевое слово new и конструктор. Класс String имеет 11 конструкторов, которые позволяют указывать начальное значение строки с использованием различных источников, таких как массив символов.
пример
public class StringDemo { public static void main(String args[]) { char[] helloArray = { 'h', 'e', 'l', 'l', 'o', '.' }; String helloString = new String(helloArray); System.out.println( helloString ); } }
Это даст следующий результат —
Выход
hello.
Примечание. Класс String является неизменным, поэтому после его создания объект String нельзя изменить. Если необходимо внести много изменений в строки символов, вам следует использовать классы String Buffer и String Builder .
Длина строки
Методы, используемые для получения информации об объекте, называются методами доступа . Одним из методов доступа, который вы можете использовать со строками, является метод length (), который возвращает количество символов, содержащихся в строковом объекте.
Следующая программа является примером length () , метод класса String.
пример
public class StringDemo { public static void main(String args[]) { String palindrome = "Dot saw I was Tod"; int len = palindrome.length(); System.out.println( "String Length is : " + len ); } }
Это даст следующий результат —
Выход
String Length is : 17
Конкатенация строк
Класс String включает метод для объединения двух строк:
string1.concat(string2);
Это возвращает новую строку, которая является строкой1 с добавленной строкой2 в конце. Вы также можете использовать метод concat () со строковыми литералами, как в —
"My name is ".concat("Zara");
Строки чаще объединяются с помощью оператора +, как в —
"Hello," + " world" + "!"
что приводит к —
"Hello, world!"
Давайте посмотрим на следующий пример —
пример
public class StringDemo { public static void main(String args[]) { String string1 = "saw I was "; System.out.println("Dot " + string1 + "Tod"); } }
Это даст следующий результат —
Выход
Dot saw I was Tod
Создание форматных строк
У вас есть методы printf () и format () для печати вывода с отформатированными числами. Класс String имеет эквивалентный метод класса format (), который возвращает объект String, а не объект PrintStream.
Использование статического метода format () в String позволяет создать отформатированную строку, которую можно использовать повторно, в отличие от одноразового оператора печати. Например, вместо —
пример
System.out.printf("The value of the float variable is " + "%f, while the value of the integer " + "variable is %d, and the string " + "is %s", floatVar, intVar, stringVar);
Вы можете написать —
String fs; fs = String.format("The value of the float variable is " + "%f, while the value of the integer " + "variable is %d, and the string " + "is %s", floatVar, intVar, stringVar); System.out.println(fs);
Строковые Методы
Вот список методов, поддерживаемых классом String —
Возвращает символ по указанному индексу.
Сравнивает эту строку с другим объектом.
Сравнивает две строки лексикографически.
Сравнивает две строки лексикографически, игнорируя различия в регистре.
Объединяет указанную строку до конца этой строки.
Возвращает true тогда и только тогда, когда эта String представляет ту же последовательность символов, что и указанный StringBuffer.
Возвращает строку, представляющую последовательность символов в указанном массиве.
Возвращает строку, представляющую последовательность символов в указанном массиве.
Проверяет, заканчивается ли эта строка указанным суффиксом.
Сравнивает эту строку с указанным объектом.
Сравнивает эту строку с другой строкой, игнорируя соображения регистра.
Кодирует эту строку в последовательность байтов, используя кодировку платформы по умолчанию, сохраняя результат в новом байтовом массиве.
Кодирует эту строку в последовательность байтов, используя именованную кодировку, сохраняя результат в новом байтовом массиве.
Копирует символы из этой строки в массив символов назначения.
Возвращает хеш-код для этой строки.
Возвращает индекс в этой строке первого вхождения указанного символа.
Возвращает индекс в этой строке первого вхождения указанного символа, начиная поиск по указанному индексу.
Возвращает индекс в этой строке первого вхождения указанной подстроки.
Возвращает индекс в этой строке первого вхождения указанной подстроки, начиная с указанного индекса.
Возвращает каноническое представление для строкового объекта.
Возвращает индекс в этой строке последнего вхождения указанного символа.
Возвращает индекс в этой строке последнего вхождения указанного символа с поиском в обратном направлении, начиная с указанного индекса.
Возвращает индекс в этой строке самого правого вхождения указанной подстроки.
Возвращает индекс в этой строке последнего вхождения указанной подстроки с обратным поиском, начиная с указанного индекса.
Возвращает длину этой строки.
Сообщает, соответствует ли эта строка заданному регулярному выражению.
Проверяет, равны ли две строковые области.
Проверяет, равны ли две строковые области.
Возвращает новую строку, полученную в результате замены всех вхождений oldChar в этой строке на newChar.
Заменяет каждую подстроку этой строки, которая соответствует данному регулярному выражению с данной заменой.
Заменяет первую подстроку этой строки, которая соответствует заданному регулярному выражению с заданной заменой.
Разбивает эту строку вокруг совпадений заданного регулярного выражения.
Разбивает эту строку вокруг совпадений заданного регулярного выражения.
Проверяет, начинается ли эта строка с указанного префикса.
Проверяет, начинается ли эта строка с указанного префикса, начиная с указанного индекса.
Возвращает новую последовательность символов, которая является подпоследовательностью этой последовательности.
Возвращает новую строку, которая является подстрокой этой строки.
Возвращает новую строку, которая является подстрокой этой строки.
Преобразует эту строку в новый массив символов.
Преобразует все символы в этой строке в нижний регистр, используя правила локали по умолчанию.
Преобразует все символы в этой строке в нижний регистр, используя правила данной локали.
Этот объект (который уже является строкой!) Сам по себе возвращается.
Преобразует все символы в этой строке в верхний регистр, используя правила локали по умолчанию.
Преобразует все символы в этой строке в верхний регистр, используя правила данной локали.
Возвращает копию строки, пропуская начальные и конечные пробелы.
Возвращает строковое представление переданного аргумента типа данных.