【发布时间】:2014-05-14 15:49:26
【问题描述】:
我对 hashMap 有疑问。更具体的是 containsKey。 我想检查我的哈希中是否存在对象。问题是当我用 2 个包含相同确切数据的不同对象调用此方法时,它们应该具有相同的 hashCode。
Person pers1,pers2;
pers1=new Person("EU",22);
pers2=new Person("EU",22);
public int hashCode(){ //From Person Class
return this.getName().hashCode()+age;
}
在我的哈希中插入 pers1 键并调用“hash.containsKey(pers1);”后返回 true,但“hash.containsKey(pers2)”返回 false。为什么以及如何解决这个问题?
谢谢!
【问题讨论】:
-
你是否也覆盖了 equals ?