Java String.equalsIgnoreCase() сравнивает текущую строку с указанной строкой без учета регистра. Используя equalsIgnoreCase(), две строки считаются равными, если они имеют одинаковую длину и соответствующие символы в двух строках равны, игнорируя их регистры.
Похожий метод String.equals() сравнивает строки с учетом регистра.
Никогда не используйте оператор '==' для проверки равенства строк. Он проверяет ссылки на объекты, что в большинстве случаев нежелательно.
1. API String.equalsIgnoreCase()
Синтаксис использования API equalsIgnoreCase() выглядит следующим образом:
boolean isEqual = thisString.equalsIgnoreCase( anotherString );
Обратите внимание: если мы передадим null в качестве аргумента метода, результат сравнения будет ложным.
2. Пример String.equalsIgnoreCase()
Следующая программа Java демонстрирует несколько сравнений с использованием API equalsIgnoreCase(). Мы видим, что передача null возвращает false. Также equalsIgnoreCase() возвращает false, когда строки имеют разное содержимое.
Assertions.assertFalse("null".equalsIgnoreCase(null));Assertions.assertFalse("abc".equalsIgnoreCase("abcd")); //Different stringsAssertions.assertTrue("abc".equalsIgnoreCase("ABC"));Assertions.assertTrue("ABC".equalsIgnoreCase("AbC"));
3. Разница между equals() и equalsIgnoreCase()
Очевидно, что основное различие между API-интерфейсами equals() и equalsIgnoreCase() заключается в их чувствительности к регистру при выполнении сравнений.
- Метод equals() выполняет сравнение с учетом регистра.
- Метод equalsIgnoreCase() выполняет сравнение без учета регистра.
Ссылка: Документация по Java String