JavaRush /Курсы /Java Syntax Pro /Примеры работы со строками

Примеры работы со строками

Java Syntax Pro
2 уровень , 3 лекция
Открыта

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 плохо читается, т.к. в нем не хватает пробелов. Чтобы задать один пробел или несколько, нужно просто написать их в коде и обернуть в двойные кавычки. Это проще, чем кажется:

" "
Строка, содержащая один пробел

Кстати, если между кавычками совсем не оставить места (написать две двойные кавычки подряд), получится так называемая «пустая строка»:

""
Пустая строка

С одной стороны, она вроде бы и есть, а с другой, при ее выводе на экран ничего не выводится. И при склейке с другими строками ничего не происходит. Эдакий аналог нуля, только для строк.



2. Преобразование к строковому типу

Как уже говорилось выше, разработчики Java сделали так, что абсолютно все переменные, объекты, выражения в 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


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


Комментарии (668)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
Сергей Земцов Уровень 3
12 января 2026
System.out.println(("CAREER: " + career).toLowerCase()) Почему тут двойные скобки? В примере ничего об этом не говориться.
Peter Уровень 6
13 января 2026
Первые скобки, самые внешние - это скобки метода
 .println() 
. Внутри этих скобок мы передаём аргумент ввиде конкатинированных строки "CAREER: " и переменной career. Чтобы метод применился именно ко всей полученной строке - конкатинацию надо обернуть в скобки и тогда метод .toLowerCase() опустит регистор для всей строки. Если грубо но более просто написать, получится чтото вроде:

.println(     (str1 + str2).toLowerCase()   )
C0N5P1RACY Уровень 21
24 ноября 2025
Задачи правда тут интереснее чем в новом курсе!
Роман Зарубин Уровень 8
20 ноября 2025
Работаем
Gris Hiver Уровень 1
27 июля 2025

String name = "Rom";
int count = (name + 12).length();
// count содержит значение 5
🔍 Пояснение: - name — строка "Rom". - name + 12 — конкатенация строки и числа, то есть "Rom" + 12 → "Rom12". - "Rom12".length() → 5.
Ramzan Уровень 6
20 июля 2025
Привет, вот уже по тихонько начинаю вливаться в Java, вроде как инфа более менее понятная, доволен тем, что хотяб какой то уровень знаний у меня имеется
Anonymous #3585174 Уровень 33
23 мая 2025
like
Anonymous #3582730 Уровень 3
13 мая 2025
Отсылка на ван пис,это годно))
30 марта 2025
Запутался немного...
TheDeadKing1 Уровень 4
18 марта 2025
Наркомания в методе делать вычисления разработчики все в норме у вас?
29 апреля 2025
все в норме
SleepingAsya Уровень 3
16 марта 2025
Приветсвую) Вопрос про кусочек задания Получение длины строки: String emptyString = ""; System.out.println((emptyString + 2 + 2 + "22").length()) //4 при выводе данного System.out.println: у нас сначала склеиваются (emptyString + 2), получается тип String 2 и потом идет склеивание с Int + 2 и остальным - поэтому в итоге получается 4 символа (2222) ИЛИ Сначала идет просто пустое значение emptyString, то бишь в выводе идёт 0, а потом складывается арифметика 2+2 и приклеивается "22" - и в выводе будет также 4 символа, но другие (0422)?
Marat Safiianov Уровень 1
17 марта 2025
Если в выражении первым идет тип String, то все последующие значения автоматически приводятся в типу String.
SleepingAsya Уровень 3
17 марта 2025
Спасибо! Значит ответ будет 2222