黑马程序员技术交流社区

标题: HashSet存储对象时,和hashCode()方法有什么联系? [打印本页]

作者: zhanghua    时间: 2011-11-16 11:24
标题: HashSet存储对象时,和hashCode()方法有什么联系?
本帖最后由 zhanghua 于 2011-11-21 13:58 编辑

                  看视频说,hashset对象存储自己写的类的对象的时候要重写hashCode()方法,为什么自己写的类要重写hashCode()方法呢?
这和对象保存到集合中有什么关系?????
作者: zhanghua    时间: 2011-11-16 12:37
这道题为什么没有回答呢,??
作者: 宋文轩    时间: 2011-11-16 12:57
Hashset的底层数据结构是 哈希表数据结构  由于set集合是元素不可重复集合,所以在存储元素的时候会调用对象本身的hashCode方法来判断这个对象是否在集合中已经存在了。重写hashCode是为了更好按你的需求来判断元素是否相同。
作者: 後天__牛永志    时间: 2011-11-16 15:27
需要重新hashCoed()和equals方法




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2