1. Конкатенація — склеювання рядків

У Java з рядками можна робити дуже просту, але дуже цікаву річ — їх можна склеювати. Така операція має назву «конкатенація». Ну а для кращого запам'ятовування: Кон-Коти-Нація. Цю операцію також часто називають «склеювання рядків» або навіть просто «додавання рядків».

Для склеювання двох рядків використовують знак +. Це дуже просто:

"значення1" + "значення2"
Конкатенація двох рядків

Приклади:

Команда Примітка
String name = "Ганнуся" + "Ганнуся";
name містить рядок ГаннусяГаннуся
String city = "New York" + "Ганнуся";
city містить рядок New YorkГаннуся
String message = "Hello! " + "Ганнуся";
message містить рядок Hello! Ганнуся

Зрозуміло, що одночасно можна складати кілька рядків, а також складати рядки та змінні.

Приклади:

Команда Примітка
String name = "Ганнуся";
String city = "New York";
String message = "Hello!" + city + name + city;
name містить рядок Ганнуся
city містить рядок New York
message містить рядок
Hello!New YorkГаннусяNew York

В останньому прикладі видно, що текст у змінній message погано читається, тому що в ньому немає пробілів. Щоб вставити один чи кілька пробілів, слід просто написати їх у коді, узявши в подвійні лапки. Це простіше, ніж здається:

" "
Рядок, що містить один пробіл

До речі, якщо між парою подвійних лапок зовсім не лишити місця, тобто написати їх підряд, отримаємо так званий «пустий рядок»:

""
Порожній рядок

З одного боку, рядок начебто є, а з іншого, якщо його вивести на екран, там нічого не з'явиться. Якщо такий рядок склеїти з іншими рядками, також нічого не відбудеться. Це такий собі аналог нуля, тільки для рядків.


1
Задача
Модуль 1. Java Syntax,  2 рівень4 лекція
Недоступна
Логотип вирішує все
У змінну tagline потрібно записати рядок "JustDoIt". Використовуй s1, s2, s3 та конкатенацію рядків.
2
Задача
Java Syntax Zero,  2 рівень6 лекція
Недоступна
Порожнеча і пробіли
Заповни пробіли порожнечею... або навпаки. Використовуй змінну emptiness, рядки з одним пробілом і конкатенацію рядків, щоб записати у змінну fullness рядок "порожнеча порожнеча порожнеча".

2. Перетворення на рядковий тип

Ми вже розповідали, що розробники Java передбачили в цій мові можливість перетворення абсолютно всіх змінних, об'єктів і виразів на тип String.

До того ж, коли ми складаємо тип String із будь-яким іншим типом, це перетворення відбувається автоматично. Приклади:

Команда Примітка
int a = 5;
String name = "Ганнуся" + a;
name містить рядок Ганнуся5
int a = 5;
String city = a + "New York" + a;
city містить рядок 5New York5
int number = 10;
String code = "Yo";
String message = "Hello! " + number + code;
message містить рядок Hello! 10Yo

У всіх трьох прикладах ми без проблем складали змінні типу int і String, і в результаті завжди отримували тип String.

Арифметичні операції з типом String виконувати не можна. Навіть якщо рядок цілком складається з цифр.

Приклади:

Команда Примітка
int a = 5;
String name = "1" + a;
name містить рядок 15
int a = 5;
String city = a + "9" + a;
city містить рядок 595
int number = 10;
String code = "10";
String message = "" + number + code;
message містить рядок 1010

Операція додавання виконується зліва направо, отже результат може бути дещо несподіваним. Приклад:

Команда Примітка
int a = 5;
String name = a + a + "1" + a;
name містить рядок 1015
Порядок виконання: ((a + a) + "1") + a

3. Перетворення рядка на число

У Java для перетворення числа на рядок досить просто додати його до пустого рядка:

String str = "" + число;
Перетворення числа на рядок

А що ж робити, коли потрібно перетворити рядок на число? Насправді, не кожен рядок можна перетворити на число. Проте коли рядок складається лише з цифр, то таки можна. Для цього клас Integer має спеціальний метод.

Ця команда має такий вигляд:

int x = Integer.parseInt(рядок);

де int x — це оголошення цілочислової змінної x, а рядок — число, задане у вигляді рядка (рядок із цифр).

Приклади:

Команда Примітка
String str = "123";
int number = Integer.parseInt(str);
number містить число 123;
int number = Integer.parseInt("321");
number містить число 321
int number = Integer.parseInt("321" + 0);
number містить число 3210
int number = "321";
Не скомпілюється: змінна має тип int, а значення — тип String

2
Задача
Java Syntax Zero,  2 рівень6 лекція
Недоступна
Конкатенація рядків і чисел
У змінну digits потрібно записати рядок "60". Використовуй змінні x, y, z, порожній рядок і конкатенацію рядків.
2
Задача
Java Syntax Zero,  2 рівень6 лекція
Недоступна
Чимраз більше й більше
У змінну hugeAmount потрібно записати число 100500. Використовуй змінні bigAmount, greatAmount і перетворення рядка на число. Для оголошення та ініціалізації змінної hugeAmount використовуй одну команду.

4. Деякі методи роботи з рядками

І насамкінець розповімо про декілька методів типу String.

Метод length()

За допомогою методу length() можна дізнатися довжину рядка — скільки в ньому символів.

Приклади:

Команда Примітка
String name = "Rome";
int count = name.length();
count містить значення 4
int count = "".length();
count містить значення 0
String name = "Rom";
int count = (name + 12).length();
count містить значення 5

Методи можна застосовувати до всього, що має тип String, навіть до виразів:

(name + 12).length()
Виклик методу length() для виразу типу String

Метод toLowerCase()

За допомогою методу toLowerCase() можна перетворити всі символи рядка на малі (рядкові):

Приклади:

Команда Примітка
String name = "Rom";
String name2 = name.toLowerCase();
name2 містить рядок rom
String name = "".toLowerCase();
name містить пустий рядок
String name = "ROM123";
String name2 = name.toLowerCase();
name2 містить рядок rom123

Метод toUpperCase()

За допомогою методу toUpperCase() можна перетворити всі символи рядка на великі (заголовні):

Приклади:

Команда Примітка
String name = "Rom";
String name2 = name.toUpperCase();
name2 містить рядок ROM
String name = "rom123";
String name2 = name.toUpperCase();
name2 містить рядок ROM123

2
Задача
Java Syntax Zero,  2 рівень6 лекція
Недоступна
Отримання довжини рядка
У методі main на екран виводяться значення трьох рядків. Зміни код так, щоб замість значень рядків виводилась їх довжина.
1
Задача
Модуль 1. Java Syntax,  2 рівень4 лекція
Недоступна
«Причешемо» резюме
Метод main виводить на екран чотири рядки. Усі вони — яскравий приклад зловживання великими літерами. Зміни код так, щоб усі літери в цих рядках стали малими.
1
Задача
Модуль 1. Java Syntax,  2 рівень4 лекція
Недоступна
Прошу регістр на мене не підвищувати!
У методі main на екран виводяться три рядки. Зміни код так, щоб усі літери в цих рядках стали великими.