为什么两个相似的物体不相等

时间:2014-07-03 14:11:26

标签: java object equals

我有这两个具有相同字段的对象。

为什么obj1.equals(obj2)会返回false?

enter image description here

3 个答案:

答案 0 :(得分:2)

这是equals的默认行为(比较引用)。因此,如果==在Object上返回false,则.equals()也会返回false。除非你已经覆盖equals()

答案 1 :(得分:2)

如果你没有覆盖equals方法,那么当你做

obj1.equals(obj2)

它正在比较图像中显示的值。

"com.waze.testing.data.Pin@4355".equals("com.waze.testing.data.Pin@4361")

将根据您的结果返回false

答案 2 :(得分:1)

您是否覆盖了.equals()?如果没有,则使用Object.equals(),如果它们是完全相同的实例,则仅返回true。