Как работает equals java
4 года назад
Человек-Молекула
Ответы
Метод equals()
в Java
используется для проверки равенства двух объектов. Он наследуется из класса Object
и может быть переопределен в пользовательских классах.
Метод equals()
проверяет, являются ли два объекта равными. По умолчанию метод equals()
сравнивает два объекта по ссылке, то есть возвращает true
только в том случае, если ссылки указывают на один и тот же объект.
Чтобы сравнить объекты на основе их значений, необходимо переопределить метод equals()
в пользовательском классе. При переопределении метода equals()
необходимо учитывать следующие рекомендации:
- Сравнивать переданный объект с текущим объектом через оператор
==
и вернутьtrue
, если ссылки указывают на один и тот же объект. - Проверить, является ли переданный объект
null
, и вернутьfalse
, если переданный объект равенnull
- Проверить, является ли класс переданного объекта таким же классом, как и текущий объект, используя оператор
instanceof
- Привести переданный объект к типу текущего класса и сравнить поля текущего объекта с полями переданного объекта. Для сравнения строк можно использовать метод
equals()
Пример переопределения метода equals()
:
В данном примере метод equals()
сравнивает два объекта класса MyClass
по полю value
. Если значения полей равны, метод возвращает true
, иначе - false
2 года назад
Иван Полежаев