Перевірка Рядків у Java
Свайпніть щоб показати меню
Під час роботи з текстовим введенням користувачі рідко вводять саме те, що ви очікуєте — хтось залишає поля порожніми, хтось вводить лише пробіли, хтось забуває обов'язкові символи. Тому перед використанням будь-якого рядка в програмі часто потрібно спочатку валідувати його — перевірити, чи відповідає він певним правилам.
Ми вже розглядали базові інструменти, такі як isEmpty(), length() та contains(), але тепер додамо ще кілька, які особливо корисні у реальних сценаріях валідації введення.
isBlank()
Дуже поширена проблема — коли рядок технічно не є порожнім, але містить лише пробіли. Наприклад, користувач може "ввести" ім'я, але натиснути пробіл кілька разів. .isBlank() вирішує цю ситуацію, розглядаючи рядки, що складаються лише з пробілів, як некоректне введення. Повертає значення типу boolean.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String customerName = " "; boolean isBlankName = customerName.isBlank(); System.out.println(isBlankName); } }
Хоча customerName не є повністю порожнім, він містить лише пробіли — тому .isBlank() повертає true, що сигналізує про відсутність змістовного вмісту.
startsWith()
Іноді потрібно переконатися, що рядок відповідає певній структурі. Наприклад, кожен код замовлення в нашій системі може починатися з "ORD". .startsWith() перевіряє початок рядка та повертає boolean.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String orderCode = "ORD-2459"; boolean validOrderCode = orderCode.startsWith("ORD"); System.out.println(validOrderCode); } }
.startsWith("ORD") перевіряє перші три символи orderCode — оскільки вони збігаються, повертає true, підтверджуючи, що код відповідає очікуваному формату.
endsWith()
Можна також перевірити кінець рядка — особливо корисно для імен файлів або форматів. Наприклад, переконатися, що файл чеку дійсно є PDF. Повертає значення типу boolean.
Main.java
123456789101112package com.example; public class Main { public static void main(String[] args) { String receiptFile = "receipt.pdf"; boolean validReceiptFile = receiptFile.endsWith(".pdf"); System.out.println(validReceiptFile); } }
.endsWith(".pdf") перевіряє останні чотири символи у receiptFile — оскільки вони збігаються з ".pdf", повертається true.
Комбінована валідація
Справжня валідація зазвичай складається не з однієї перевірки — це кілька правил, які працюють разом. Наприклад, перевірка імені користувача може вимагати, щоб воно не було порожнім, містило щонайменше 5 символів і не містило пробілів:
Main.java
123456789101112131415package com.example; public class Main { public static void main(String[] args) { String username = "coffeeMaster"; boolean validUsername = !username.isBlank() && username.length() >= 5 && !username.contains(" "); System.out.println(validUsername); } }
Усі три умови об'єднані за допомогою && — ім'я користувача має пройти кожну перевірку, щоб вважатися дійсним. "coffeeMaster" не є порожнім, містить більше 5 символів і не має пробілів, тому validUsername дорівнює true.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат