本帖最后由 小小太阳 于 2013-5-22 14:47 编辑
public int hashCode()
{
System.out.println(this.name+".....hashcode");
return this.name.hashCode()+age;
}
public boolean equals(Object obj)
{
if(!(obj instanceof Person1))
{
return false;
}
Person1 p = (Person1)obj;
System.out.println(this.name+"..equals..."+p.name);
return this.name.equals(p.name) && this.age==p.age;
}
只是返回哈希值,怎么就做了比较呢?这两个方法怎么被调用呢?求高手解答,十分困惑 |