高频面试题:为什么要重写hashCode和equals方法
先上参考回答
在HashMap中比较key时,会先使用hashCode方法比较hash值是否相等,若相等再使用equals方法进行值的比较,因为hash值相等的两个对象不一定相同。如果不对这两个方法重写,那么将调用Object类的方法,将只按照地址进行比较,会和预期结果有出入。
为什么hashCode相等两个对象却仍不一定相同?
为什么不重写hashCode和equals方法会按照地址比较?
为什么hashCode和equals方法都要重写?
观察哈希表的结构
当发生“Hash冲突”时,举例来说就是两个
原创
2020-08-27 00:48:31 ·
394 阅读 ·
0 评论