为什么重写equals()方法就必须重写hashCode()方法? 收藏 阅读:298
2020-04-11 21:15:29

A.   Object.hashCode()方法是一个本地native方法,返回的是对象引用中存储的对象的内存地址;

B.   基于散列的集合(HashSet、HashMap和Hashtable)存放key时,调用该对象(存入对象)的hashCode()方法来得到该对象的hashCode值,然后根据该hashCode值决定该对象在HashSet中存储的位置;

C.   所以如果equals方法返回true,那么两个对象的hasCode()返回值必须一样


© 版权归知否网(zhifou.net)所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权知否网将依法追究其法律责任。
读后有收获,请作者喝杯咖啡


全部评论

发表评论