Встречается на собеседованиях • сегодня

Что делает equals

Метод equals в Java используется для сравнения объектов на логическое равенство. В отличие от оператора ==, который сравнивает ссылки, equals проверяет содержимое объектов.

По умолчанию (в классе Object) он ведёт себя как ==, но его переопределяют в большинстве классов (например, String, Integer), чтобы сравнивать значения.

Пример:

java
String s1 = new String("hello");
String s2 = new String("hello");

System.out.println(s1 == s2);      // false (разные объекты)
System.out.println(s1.equals(s2)); // true (одинаковое содержимое)

При переопределении equals важно соблюдать контракт:

  • рефлексивность (x.equals(x) == true)
  • симметричность (x.equals(y) == y.equals(x))
  • транзитивность (если x.equals(y) и y.equals(z), то x.equals(z))
  • консистентность (многократные вызовы дают одинаковый результат)
  • x.equals(null) должно возвращать false
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы