试题
考点

java语言-Object相关方法-equals()、hashcode()

面5笔5

下面论述正确的是()?

A.如果两个对象的hashcode相同,那么它们作为同一个HashMap的key时,必然返回同样的值

B.如果a,b的hashcode相同,那么a.equals(b)必须返回true

C.对于一个类,其所有对象的hashcode必须不同

D.如果a.equals(b)返回true,那么a,b两个对象的hashcode必须相同

前往“校招VIP”小程序,刷题更快
最新校招难题刷题,快来进刷题群吧
解答

正确答案是 D

A:在hashmap中,key值是不可能重复的,由hashCode和equals方法共同判断key值是否相等。即使两个对象的hashCode相同相等,也不能说他们的key值相等。

B和D:如果x.equals(y)返回true,那么这两个对象的hashCode返回的整数结果必然相同。如果x.equals(y)返回false,则不一定;
反之,hashCode返回的值不相等,则equals方法返回值一定不相等。hashCode返回值相等,则不一定
C:hashCode的值是可以相同的。

评论

南城以北是片海

2022-07-29 22:00:00

0 0

媲美

2022-06-19 22:00:00

0 0

埃蒙迷路患者

2021-09-09 11:30:00

0 0

*5673

2018-10-11 19:37:18

0 0

加载更多