Операції маніпулювання рядками в Java
Свайпніть щоб показати меню
У реальних програмах рядки не є статичними — їх постійно об'єднують, шукають, очищають і трансформують. Це називається маніпулюванням рядками: застосування операцій для зміни, перевірки або отримання інформації з тексту.
Конкатенація рядків
Найпростіша операція — це конкатенація — об'єднання рядків за допомогою оператора +:
Main.java
1234567891011package com.example; public class Main { public static void main(String[] args) { String customerName = "Ann"; String welcomeMessage = "Welcome " + customerName; System.out.println(welcomeMessage); // Welcome Ann } }
Усі інші операції над рядками базуються на методах — вбудованих діях, які надає Java. Замість написання логіки з нуля, ми викликаємо ці методи й дозволяємо Java виконувати операцію. Уявіть їх як готові інструменти, які застосовуються безпосередньо до рядка.
length()
Якщо потрібно дізнатися, скільки символів містить рядок — включаючи пробіли — використовуйте метод .length(). Він повертає значення типу int.
Main.java
12345678910111213package com.example; public class Main { public static void main(String[] args) { String customerName = "Ann"; String welcomeMessage = "Welcome " + customerName; int messageLength = welcomeMessage.length(); System.out.println(messageLength); } }
"Welcome Ann" містить 11 символів, включаючи пробіл, тому messageLength зберігає значення 11, і саме це виводиться на екран.
toUpperCase()
Якщо потрібно перетворити всі символи рядка на великі літери — наприклад, для чеків або етикеток — використовуйте .toUpperCase(). Повертає новий об'єкт String.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String customerName = "anna"; String upperCaseName = customerName.toUpperCase(); System.out.println(upperCaseName); } }
.toUpperCase() не змінює оригінальний customerName — створюється новий об'єкт String з усіма літерами у верхньому регістрі, тому "anna" перетворюється на "ANNA".
toLowerCase()
Якщо потрібно, щоб усі символи були у нижньому регістрі — корисно для уніфікації або логіки порівняння — використовуйте .toLowerCase(). Повертає новий об'єкт String.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String order = "Large Latte with oat milk"; String lowerCaseOrder = order.toLowerCase(); System.out.println(lowerCaseOrder); } }
Створюється новий об'єкт String, у якому кожен символ перетворено на нижній регістр, тому результатом буде "large latte with oat milk".
contains()
Якщо потрібно перевірити, чи містить рядок певне слово або фрагмент тексту, використовуйте .contains(). Повертає значення типу boolean.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String order = "Large Latte with oat milk"; boolean containsLatte = order.contains("Latte"); System.out.println(containsLatte); } }
.contains() сканує весь рядок і перевіряє, чи зустрічається "Latte" будь-де всередині нього. Оскільки це так, результат — true.
isEmpty()
Якщо потрібно перевірити, чи містить рядок будь-який вміст, використовуйте .isEmpty(). Повертає true, якщо рядок не містить жодного символу, інакше — false.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String customerNote = ""; boolean emptyNote = customerNote.isEmpty(); System.out.println(emptyNote); } }
customerNote — це порожній рядок без символів, тому .isEmpty() повертає true.
replace()
Якщо потрібно замінити частину рядка без повного переписування, використовуйте .replace(). Цей метод знаходить певний фрагмент тексту та замінює його на новий. Повертає новий об'єкт String.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String order = "Large Latte with oat milk"; String updatedMessage = order.replace("Latte", "coffee with milk"); System.out.println(updatedMessage); } }
.replace() знаходить кожне входження "Latte" у order і замінює його на "coffee with milk", утворюючи "Large coffee with milk with oat milk".
charAt() та індексація
Для доступу до окремого символу на певній позиції у рядку використовуйте .charAt(). Повертає значення типу char.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String customerName = "Daniel"; char firstLetter = customerName.charAt(0); System.out.println(firstLetter); } }
.charAt(0) звертається до позиції 0, тобто до першого символу 'D', і зберігає його у змінній типу char з назвою firstLetter.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Операції маніпулювання рядками в Java
У реальних програмах рядки не є статичними — їх постійно об'єднують, шукають, очищають і трансформують. Це називається маніпулюванням рядками: застосування операцій для зміни, перевірки або отримання інформації з тексту.
Конкатенація рядків
Найпростіша операція — це конкатенація — об'єднання рядків за допомогою оператора +:
Main.java
1234567891011package com.example; public class Main { public static void main(String[] args) { String customerName = "Ann"; String welcomeMessage = "Welcome " + customerName; System.out.println(welcomeMessage); // Welcome Ann } }
Усі інші операції над рядками базуються на методах — вбудованих діях, які надає Java. Замість написання логіки з нуля, ми викликаємо ці методи й дозволяємо Java виконувати операцію. Уявіть їх як готові інструменти, які застосовуються безпосередньо до рядка.
length()
Якщо потрібно дізнатися, скільки символів містить рядок — включаючи пробіли — використовуйте метод .length(). Він повертає значення типу int.
Main.java
12345678910111213package com.example; public class Main { public static void main(String[] args) { String customerName = "Ann"; String welcomeMessage = "Welcome " + customerName; int messageLength = welcomeMessage.length(); System.out.println(messageLength); } }
"Welcome Ann" містить 11 символів, включаючи пробіл, тому messageLength зберігає значення 11, і саме це виводиться на екран.
toUpperCase()
Якщо потрібно перетворити всі символи рядка на великі літери — наприклад, для чеків або етикеток — використовуйте .toUpperCase(). Повертає новий об'єкт String.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String customerName = "anna"; String upperCaseName = customerName.toUpperCase(); System.out.println(upperCaseName); } }
.toUpperCase() не змінює оригінальний customerName — створюється новий об'єкт String з усіма літерами у верхньому регістрі, тому "anna" перетворюється на "ANNA".
toLowerCase()
Якщо потрібно, щоб усі символи були у нижньому регістрі — корисно для уніфікації або логіки порівняння — використовуйте .toLowerCase(). Повертає новий об'єкт String.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String order = "Large Latte with oat milk"; String lowerCaseOrder = order.toLowerCase(); System.out.println(lowerCaseOrder); } }
Створюється новий об'єкт String, у якому кожен символ перетворено на нижній регістр, тому результатом буде "large latte with oat milk".
contains()
Якщо потрібно перевірити, чи містить рядок певне слово або фрагмент тексту, використовуйте .contains(). Повертає значення типу boolean.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String order = "Large Latte with oat milk"; boolean containsLatte = order.contains("Latte"); System.out.println(containsLatte); } }
.contains() сканує весь рядок і перевіряє, чи зустрічається "Latte" будь-де всередині нього. Оскільки це так, результат — true.
isEmpty()
Якщо потрібно перевірити, чи містить рядок будь-який вміст, використовуйте .isEmpty(). Повертає true, якщо рядок не містить жодного символу, інакше — false.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String customerNote = ""; boolean emptyNote = customerNote.isEmpty(); System.out.println(emptyNote); } }
customerNote — це порожній рядок без символів, тому .isEmpty() повертає true.
replace()
Якщо потрібно замінити частину рядка без повного переписування, використовуйте .replace(). Цей метод знаходить певний фрагмент тексту та замінює його на новий. Повертає новий об'єкт String.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String order = "Large Latte with oat milk"; String updatedMessage = order.replace("Latte", "coffee with milk"); System.out.println(updatedMessage); } }
.replace() знаходить кожне входження "Latte" у order і замінює його на "coffee with milk", утворюючи "Large coffee with milk with oat milk".
charAt() та індексація
Для доступу до окремого символу на певній позиції у рядку використовуйте .charAt(). Повертає значення типу char.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String customerName = "Daniel"; char firstLetter = customerName.charAt(0); System.out.println(firstLetter); } }
.charAt(0) звертається до позиції 0, тобто до першого символу 'D', і зберігає його у змінній типу char з назвою firstLetter.
Дякуємо за ваш відгук!