Сравнение ссылок в Java - PullRequest
       18

Сравнение ссылок в Java

12 голосов
/ 20 октября 2008

Допустим, вы переопределили методы объекта equals () и hashCode (), чтобы они использовали поля объекта.

Как вы проверяете, есть ли две ссылки на один и тот же объект, а именно метод stock equals ()?

Ответы [ 5 ]

33 голосов
/ 20 октября 2008

Используйте == для объектов для сравнения идентичности.

Это то, что делает реализация по умолчанию equals(), но обычно она переопределяет equals() для проверки "эквивалентного содержимого".

6 голосов
/ 20 октября 2008

Вот что делает оператор ==.

1 голос
/ 10 января 2019

Если вам нужно сделать это для JUnit Assertion, вы также можете использовать Assert.assertSame()

1 голос
/ 20 октября 2008

Поведение по умолчанию для equals () заключается в сравнении двух объектов с помощью оператора ==. Так что если вы хотите использовать bahaviour по умолчанию ==, если вы хотите, чтобы ваше переопределенное поведение использовалось equals ().

0 голосов
/ 27 июля 2016

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...