Сравнение строк в Java: методы сравнения двух строк на предмет равенства

Чтобы сравнить две строки в Java и проверить, равны ли они, вы можете использовать несколько методов. Вот некоторые из часто используемых подходов:

  1. Использование метода equals(). Этот метод сравнивает содержимое двух строк и возвращает true, если они равны, и false иначе. В нем учитывается регистр.
String str1 = "Hello";
String str2 = "World";
if (str1.equals(str2)) {
    System.out.println("Strings are equal");
} else {
    System.out.println("Strings are not equal");
}
  1. Использование метода equalsIgnoreCase(): этот метод сравнивает содержимое двух строк, игнорируя регистр. Он возвращает true, если они равны, и falseв противном случае.
String str1 = "Hello";
String str2 = "hello";
if (str1.equalsIgnoreCase(str2)) {
    System.out.println("Strings are equal");
} else {
    System.out.println("Strings are not equal");
}
  1. Использование метода compareTo(): этот метод лексикографически сравнивает две строки. Он возвращает отрицательное целое число, если первая строка меньше второй, ноль, если они равны, и положительное целое число, если первая строка больше.
String str1 = "Hello";
String str2 = "World";
int result = str1.compareTo(str2);
if (result == 0) {
    System.out.println("Strings are equal");
} else {
    System.out.println("Strings are not equal");
}
  1. Использование оператора ==. В Java вы также можете использовать оператор ==для сравнения строк. Однако этот метод проверяет, указывают ли две ссылки на одну и ту же ячейку памяти, а не сравнивает их содержимое. Поэтому не во всех случаях он может дать ожидаемый результат.
String str1 = "Hello";
String str2 = "Hello";
if (str1 == str2) {
    System.out.println("Strings are equal");
} else {
    System.out.println("Strings are not equal");
}

Обычно рекомендуется использовать методы equals()или equalsIgnoreCase()для сравнения строк на основе их содержимого.