汪汪一只猫
您需要提供自己的equals()in 实现MyClass。@Overridepublic boolean equals(Object other) {
if (!(other instanceof MyClass)) {
return false;
}
MyClass that = (MyClass) other;
// Custom equality check here.
return this.field1.equals(that.field1)
&& this.field2.equals(that.field2);}hashCode()如果哈希表中有可能使用您的对象,则还应该覆盖。一个合理的实施将是该对象的字段的哈希码喜欢的东西结合起来:@Overridepublic int hashCode() {
int hashCode = 1;
hashCode = hashCode * 37 + this.field1.hashCode();
hashCode = hashCode * 37 + this.field2.hashCode();
return hashCode;}有关实现哈希函数的更多详细信息,请参见此问题。