大家好,我有一点问题需要解决。
我创建了一个equals()方法,该方法仅基于对象的类,因此如果两个obj属于同一个类,则obj1.equals(obj2)返回true。 现在我的问题是,我如何仅基于obj类实现hashcode()?
@Override
public boolean equals(Object obj){
if(obj.getClass() == this.getClass()){
return true;
}else{
return false;
}
}
答案 0 :(得分:1)
您可以返回hashCode
实例的Class
:
public int hashCode ()
{
return getClass().hashCode();
}
这样可以确保基于equals()
实现的两个相同的对象具有相同的hashCode()
。