我有一个 arrayList 并且我想使用 contains(Thing o) 方法来检查这两个对象的相等性,并且我覆盖了 Thing 类中的 equals() 方法但是当我调用 contains 方法时这不起作用!这是我的东西类:
public class Thing{
private int id;
//getter setter
@Override
public boolean equals(Object o) {
if(!(o instanceof Thing))
return false;
if(id == ((Thing)o).getId())
return true;
return false;
}
}
是否也需要重写 hashCode() 方法?如果是,如何覆盖它?