首页 > 其他 > 详细

总结,为什么要重写hashset的hashcode()和equals()?

时间:2018-12-19 22:32:04      阅读:181      评论:0      收藏:0      [点我收藏+]
  1. 看了非常多博客,怕自己忘记了,通俗易懂的总结如下

     

    本人总结下:

    重写前,比较地址,hashcode方法如果相等不一定是同一个对象,所以再用equals再比内存地址

    重写后,比较值,重写hashCode方法后,值相同的不同对象返回的是同样的哈希码,但是值不同的不同对象可能也会有相同的哈希码,所以再用重写的equals方法比值

     

    重写前不符合人的思考(如果直接只用equals效率太低,hash比对比较快,最后使用equals方法以防万无一失)

总结,为什么要重写hashset的hashcode()和equals()?

原文:https://www.cnblogs.com/maplesu/p/10146492.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!