【Java面试题】41 两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?
2017-03-29 10:37
731 查看
对。
如果对象要保存在HashSet或HashMap中,它们的equals相等,那么,它们的hashcode值就必须相等。
如果不是要保存在HashSet或HashMap,则与hashcode没有什么关系了,这时候hashcode不等是可以的,例如arrayList存储的对象就不用实现hashcode,当然,我们没有理由不实现,通常都会去实现的。
相关文章推荐
- 面试题:两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?
- Java - 两个对象值相同(x.equals(y) == true),但却可以有不同的hash code,这句话对不对?
- 两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?
- 两个对象值相同 (x.equals(y) == true) ,但可有不同的 hash code ,这句话对不对?
- 两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?
- (面试题)两个对象值相同 (x.equals(y) == true) ,但却可有不同的 hash code ,这 句话对不对?
- 两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对
- 两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对
- 两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对
- 两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?
- 两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?
- 两个对象值相同(x.equals(y)==true),但却可有不同的hash code,这句话对不对
- (面试题)两个对象值相同 (x.equals(y) == true) ,但却可有不同的 hash code ,这 句话对不对
- 两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对
- 两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?
- 两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对
- 两个对像值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?
- .两个对象值相(x.equals(y)==true),但却可有不同的hash code,这句话对不对?
- 两个对象值相同(x.equals(y) == true),但却可有不同的hashCode,这句话对不对?
- -两个对象值相同(xequals(y) == true)但却可有不同的hash code这句话应该是对的吧