Java. Строки символов. Класс String. Часть 2

Класс String. Часть 2


Содержание


1. Метод endsWith()

Данный метод предназначен для определения того, есть ли подстрока окончанием исходной строки.

Общая форма метода:

boolean endsWith(вторая_строка)

Пример.

// метод endsWith()
String s1, s2;
boolean b;

s1 = "Java Eclipse";
s2 = "Eclipse";

b = s1.endsWith("Ecl");  // b = false
b = s2.endsWith(s1);     // b = false
b = s1.endsWith(s2);     // b = true
b = s1.endsWith("Java"); // b = false
b = s1.endsWith("ipse"); // b = true

 

2. Разбиение строки на массив целых чисел. Метод getBytes()

Метод getBytes() позволяет получить значение строки в виде массива значений типа byte, в котором каждое значение есть кодом символа в таблице символов.

Например. Строка

"Java"

состоит из последовательности символов с кодами: 74 — ‘J’, 97 — ‘a’, 118 — ‘v’, 97 — ‘a’.

Пример.

// метод getBytes()
String s;
byte[] c;

s = "Java Eclipse";
c = s.getBytes(); // c = { 74, 97, 118, 97 } - коды символов слова "Java"

 

3. Определение первого вхождения символа или строки. Метод indexOf()

Метод indexOf() имеет несколько перегруженных реализаций.

В первой реализации метод возвращает позицию первого вхождения символа с заданным кодом. Во второй реализации метод возвращает позицию первого вхождения заданной подстроки в строке.

Если не найдено совпадений, то метод возвращает -1.

Общая форма реализаций метода indexOf():

int indexOf(код_символа)
int indexOf(вторая_строка)

Пример использования метода indexOf().

// метод indexOf()
String s;
int d;

s = "Java Eclipse";

// 1-й вариант метода
d = s.indexOf(118); // d = 2, позиция символа с кодом 118 - символа 'v'
d = s.indexOf(130); // d = -1, символа с кодом 130 нет в строке s
d = s.indexOf(74); // d = 0

// 2-й вариант метода - позиция первого вхождения подстроки
d = s.indexOf("ava"); // d = 1
d = s.indexOf("abs"); // d = -1, вхождений нет

 

4. Проверка, есть ли строка пустой. Метод isEmpty()

Метод isEmpty() возвращает значение true, если строка есть пустой «». В противном случае возвращается false. Общая форма метода:

boolean isEmpty()

Сделать проверку, есть ли строка пустой, также можно с помощью операции ‘==‘.

Пример.

// метод isEmpty()
String s;
boolean b;

s = "Java Eclipse";
b = s.isEmpty(); // b = false

s = "";
b = s.isEmpty(); // b = true

// операция '=='
b = s==""; // b = true
s = "Java";
b = s==""; // b = false

 

5. Последнее вхождение символа или строки. Метод lastIndexOf()

Метод lastIndexOf() определяет позицию последнего вхождения символа или подстроки в заданной строке. Общая форма двух перегруженных реализаций метода:

int lastIndexOf(код_символа)
int lastIndexOf(вторая_строка)

Пример.

String s;
int d;

s = "Java";
d = s.lastIndexOf(97); // d = 3, последнее вхождение символа с кодом 97 - 'a'
d = s.indexOf(97); // d = 1, первое вхождение символа с кодом 97
d = s.lastIndexOf("va"); // d = 2
d = s.lastIndexOf("a");  // d = 3

 

6. Замена символов в тексте. Метод replace()

Метод replace() осуществляет замену символов в тексте. Метод имеет несколько вариантов реализаций:

String replace(символ1, символ2)
String replace(строка1, строка2)
String replaceFirst(строка1, строка2)

В вышеприведенных описаниях методов:

  • символ1 – символ, который нужно заменить;
  • символ2 – заменяющий символ;
  • строка1 – текст, который нужно заменить;
  • строка2 – текст, заменяющий другой текст.

Метод replaceFirst() заменяет только первое вхождение строки2 в строке1 (см. пример).

Пример.

// метод replace()
String s,s2;

s = "TextTextText";

// замена одного символа
s2 = s.replace('T', 'X'); // s2 = "XextXextXext"

// замена одного текста на другой
s2 = s.replace("T", "TT"); // s2 = "TTextTTextTText"
s2 = s.replace("Text", "ABC"); // s2 = "ABCABCABC"

// метод replaceFirst()
s2 = s.replaceFirst("Te", "ABC"); // s2 = "ABCxtTextText"

 

7. Метод startsWith()

Метод startsWith() определяет, есть ли подстрока началом исходной строки. Подстрока задается параметром метода.

Общая форма метода:

boolean startsWith(подстрока)

Пример.

// метод startsWith()
String s;
boolean b;

s = "TextTextText";

b = s.startsWith("Te");  // b = true
b = s.startsWith("ext"); // b = false

 

8. Выделение подстроки из строки. Метод substring()

Метод substring() выделяет подстроку из строки. Метод имеет несколько вариантов реализаций.

Вариант 1.

String substring(индекс)

В этом случае выделяется подстрока начиная из позиции индекс и до конца строки.

Вариант 2.

String substring(индекс1, индекс2)

В этом случае выделяется подстрока начиная из позиции индекс1 и заканчивая позицией индекс2.

Пример.

// метод substring()
String s, s2;

// вариант 1
s = "This is a text";
s2 = s.substring(2); // s2 = "is is a text"

// вариант 2
s2 = s.substring(2,3);  // s2 = "i"
s2 = s.substring(2,4);  // s2 = "is"
s2 = s.substring(6,13); // s2 = "s a tex"

 

9. Разбиение строки на символы. Метод toCharArray()

Метод toCharArray() переводит строку типа String в массив символов char[].

Пример.

// метод toCharArray()
String s;
char c[];
s = "Java";
c = s.toCharArray(); // c = { 'J', 'a', 'v', 'a' }

 



10. Приведение к нужному регистру символов. Методы toLowerCase() и toUpperCase()

Метод toLowerCase() приводит символы строки к нижнему регистру. Метод toUpperCase() приводит символы строки к верхнему регистру.

Общая форма методов:

String toLowerCase()
String toUpperCase()

Пример.

// метод toLowerCase()
String s1;
String s2;

s1 = "Java Eclipse";
s2 = s1.toLowerCase(); // s2 = "java eclipse"
s2 = s1.toUpperCase(); // s2 = "JAVA ECLIPSE"

 

11. Преобразование массива символов char[] в строку String. Метод copyValueOf()

Метод copyValueOf() преобразует массив символов типа char[] в строку символов.

Общая форма метода:

String copyValueOf(массив_символов)

Пример.

// метод copyValueOf()
String s;
char[] c = { 'J', 'a', 'v', 'a' };

s = String.copyValueOf(c); // s = "Java"

 

12. Как перевести число в его строчное представление? Метод valueOf()

Метод valueOf() переводит значение числового или другого типа в его строчное представление.

Метод имеет несколько вариантов реализации, которые отличаются параметром

String valueOf(boolean arg0)
String valueOf(char arg0)
String valueOf(char[] arg0)
String valueOf(double arg0)
String valueOf(float arg0)
String valueOf(int arg0)
String valueOf(long arg0)

Пример.

// метод valueOf()
String s;

// тип double
double d;
d = 3.8567;
s = String.valueOf(d); // s = "3.8567"

// тип int
int t;
t = -3903;
s = String.valueOf(t); // s = "-3903"

// тип char
char c = '+';
s = String.valueOf(c); // s = "+"

// тип boolean
boolean b;
b = true;
s = String.valueOf(b); // s = true

 


Связанные темы