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

 


Зв’язані теми