Я читал о методе equals в Java и слышал, как люди говорят, что ==
проверяет равенство ссылок (являются ли они одним и тем же объектом)..equals()
проверяет равенство значений (являются ли они логически "равными").
Я верю, что это правда, но, если вы посмотрите на исходный код для .equals()
, он просто перейдет на ==
из класса Object:
public boolean equals(Object obj) {
return (this == obj);
}
Теперь я в замешательстве.Я вижу, что мы проверяем, имеют ли текущий объект ту же ссылку на явный параметр.Проверяется ли на равенство ссылок или на равенство значений?