我有这两个具有相同字段的对象。
为什么obj1.equals(obj2)
会返回false?
答案 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。