Читайте также:
|
|
Создание строк
Строки тоже являются переменными ссылочного типа, а точнее — ссылками на объекты одного из нескольких строковых классов Java. Мы рассмотрим класс String.
Самый распространенный способ создать строку — это организовать ссылку типа String на строку-константу:
String s = "Это строка";
Можно просто сначала объявить переменную (которая получит значение null), а потом заставить ее ссылаться на строку-константу, другую строку или воспользоваться командой new, чтобы явным образом выделить память для строки:
String s1, s2, s3; // Объявление трех переменных, которые пока не связаны ни с какой строкой
s1 = "Да здравствует день танкиста"; // Переменная s1 теперь ссылается на область памяти, в которой хранится строка "Да здравствует день танкиста"
s2 = s1; // Теперь обе переменные s1 и s2 ссылаются на одно и то же место памяти
s3 = new String(); // s3 ссылается на место в памяти, где хранится пустая строка
Класс String содержит следующие методы для работы со строками:
String concat (String s) или “+” – слияние строк;
boolean equals (Object ob) и equalsIgnoreCase (String s) – сравнение строк с учетом и без учета регистра соответственно;
int compareTo (String s) и compareToIgnoreCase (String s) – лексикографическое сравнение строк с учетом и без учета регистра. Метод осуществляет вычитание кодов символов вызывающей и передаваемой в метод строк и возвращает целое значение. Метод возвращает значение нуль в случае, когда equals() возвращает значение true;
boolean contentEquals (StringBuffer ob) – сравнение строки и содержимого объекта типа StringBuffer;
String substring (int n, int m) – извлечение из строки подстроки длины (m-n), начиная с позиции n. Нумерация символов в строке начинается с нуля;
String substring (int n) – извлечение из строки подстроки, начиная с позиции n;
int length () – определение длины строки;
int indexOf (char ch) – определение позиции символа в строке;
static String valueOf(значение) – преобразование переменной базового типа к строке;
String toUpperCase ()/toLowerCase() – преобразование всех символов вызывающей строки в верхний/нижний регистр;
String replace (char с1, char с2) – замена в строке всех вхождений первого символа вторым символом;
String intern () – заносит строку в “пул” литералов и возвращает ее объектную ссылку;
String trim () – удаление всех пробелов в начале и конце строки;
char charAt (int position) – возвращение символа из указанной позиции (нумерация с нуля);
boolean isEmpty () – возвращает true, если длина строки равна 0;
byte[] getBytes(), getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) – извлечение символов строки в массив байт или символов;
static String format(String format, Object... args), format(Locale l, String format, Object... args) – генерирует форматированную строку, полученную с использованием формата, интернационализации и др.;
String[] split (String regex), split(String regex, int limit) – поиск вхождения в строку заданного регулярного выражения (разделителя) и деление исходной строки в соответствии с этим на массив строк. Метод split(String regExp) разбивает текст на слова, используя в качестве разделителей символы, входящие в параметр regExp, и возвращает ссылку на массив, составленный из этих слов. Параметр regExp представляет собой список разделителей слов (прбел,?!,.: и т.п.). Сами разделители ни в одно слово не входят.
Во всех случаях вызова методов, изменяющих строку, создается новый объект типа String.
В следующем примере спользуются методы работы со строками.
public class stringsamoilova {
static int i;
public static void main(String[] args) {
primer1 ();
}
public static void primer1(){
String str1 = "В траве сидел кузнечик";
i = str1. length ();
String str2 = " совсем как огуречик.";
str2 = str1. concat (str2);
str2 = str2.toUpperCase();
System. out. println(str2);
str2 = str2. replace ("ЧИК", "Ц");
System. out. println(str2);
str1 = str2. substring (8, 22).toLowerCase();
System. out. println(str1);
String[] arr = str2. split (" ");
for (String ss: arr)
System. out. println(ss);
}
}
Отладьте данный пример, заменив строки произвольным текстом.
Дата добавления: 2015-09-11; просмотров: 81 | Поможем написать вашу работу | Нарушение авторских прав |
<== предыдущая лекция | | | следующая лекция ==> |
Создание массива | | | Дополнительный материал. Работа с датой и временем |