awilum.ru
Статьи Курсы Об авторе

Сравнение строк в Java

В Java сравнение строк можно выполнить с использованием нескольких методов и операторов.

Рассмотрим несколько способов сравнения строк в Java.

Метод equals()

Этот метод сравнивает содержание двух строк. Если содержание двух строк одинаково, метод возвращает true, в противном случае - false.

String str1 = "Hello";
String str2 = "hello";

boolean result = str1.equals(str2); // false

В данном случае, str1.equals(str2) вернет false, потому что регистр символов различается.

Метод equalsIgnoreCase()

Этот метод также сравнивает содержание строк, но не учитывает регистр символов.

String str1 = "Hello";
String str2 = "hello";

boolean result = str1.equalsIgnoreCase(str2); // true

В этом случае, str1.equalsIgnoreCase(str2) вернет true, так как содержание строк идентично, несмотря на различия в регистре символов.

Оператор ==

Оператор == сравнивает ссылки на объекты. Если две переменные содержат ссылку на один и тот же объект (адрес памяти), оператор вернет true. Однако, если строки созданы с использованием разных операторов или методов, даже если они содержат одинаковые значения, оператор == вернет false.

String str1 = "Hello";
String str2 = "Hello";
String str3 = new String("Hello");

System.out.println(str1 == str2); // true
System.out.println(str1 == str3); // false

Здесь str1 == str2 вернет true, потому что обе переменные ссылается на один и тот же литерал строки. Но str1 == str3 вернет false, так как str3 ссылается на новый объект, созданный с помощью ключевого слова new.

Метод compareTo()

Этот метод сравнивает две строки лексикографически.

Он возвращает целое число:

Пример:

String str1 = "apple";
String str2 = "banana";

int result = str1.compareTo(str2); // отрицательное число (-1)

Здесь str1.compareTo(str2) вернет отрицательное число (-1), так как лексикографически строка apple меньше строки banana.

Хотите стать востребованным Java разработчиком?
Присоединяйтесь к курсу Java Тренажер прямо сейчас!
Научитесь решать разнообразные практические задачи по программированию, которые помогут улучшить ваш уровень программирования на Java.
Не упустите шанс стать экспертом в мире разработки – начните свой путь прямо сейчас!
Обнаружили ошибку в этой статье? Хотите уточнить, обновить или добавить что-то?
Все мои статьи доступны для редактирования на GitHub. Буду благодарен за любое улучшение или исправление!