» Язык
java
» Главная
страница
» Вернуться
к содержанию
Работа
со строками
В
языках С и C++ отсутствует встроенная
поддержка такого объекта, как
строка. В них при необходимости
передается адрес последовательности
байтов, содержимое которых трактуется
как символы до тех пор, пока
не будет встречен нулевой байт,
отмечающий конец строки. В пакет
java.lang встроен класс, инкапсулирующий
структуру данных, соответствующую
строке. Этот класс, называемый
String, не что иное, как объектное
представление неизменяемого
символьного массива. В этом
классе есть методы, которые
позволяют сравнивать строки,
осуществлять в них поиск и извлекать
определенные символы и подстроки.
Класс StringBuffer используется
тогда, когда строку после создания
требуется изменять.
И
String, и StringBuffer объявлены
final, что означает, что ни
от одного из этих классов нельзя
производить подклассы. Это было
сделано для того, чтобы можно
было применить некоторые виды
оптимизации позволяющие увеличить
производительность при выполнении
операций обработки строк.
Конструкторы
Как
и в случае любого другого класса,
вы можете создавать объекты
типа String с помощью оператора
new. Для создания пустой строки
используется конструктор без
параметров:
String
s = new String():
Приведенный
ниже фрагмент кода создает объект
s типа String инициализируя
его строкой из трех символов,
переданных конструктору в качестве
параметра в символьном массиве.
char
chars[] = { 'а', 'b', 'с' }
:
String
s = new String(chars)
System.out.println(s):
Этот
фрагмент кода выводит строку
“abc”. Итак, у этого конструктора
— 3 параметра:
String(char
chars[], int начальныйИндекс,
int числоСимволов);
Используем
такой способ инициализации в
нашем очередном примере:
char
chars[] = { 'a', 'b', 'с', 'd',
'e', 'f' } :
String
s = new String(chars,2,3);
System.out.println(s);
Этот
фрагмент выведет “cde”.
Следующий
урок
|