- 博客(2)
- 收藏
- 关注
原创 为什么最好同时重写equals和hashCode方法
需要说明的是,不同时重写这两个方法是因为在使用哈希表时可能会出现问题。哈希表先使用哈希值计算下标,如果下标相同再使用equals判断是否相等,相等就不存。我们重写equals方法是为了达成我们想要的比较效果,使得不同地址值的对象比较的结果相同,如学生对象的学号相同,我们就认为两个学生对象相同。如果只重写了其中一个方法,那么在哈希表的不同位置处可能会存储相同的对象(属性值相同的对象)。重写Hashcode方法是为了使哈希值不根据地址计算,而是根据对象属性值来计算。
2023-05-15 22:59:51
118
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人