黑马程序员技术交流社区

标题: 关于hashcode的问题 [打印本页]

作者: 于星星    时间: 2012-7-23 20:33
标题: 关于hashcode的问题
hashcode的作用是什么?它和内存泄露有什么关系?
作者: 田向向    时间: 2012-7-23 20:38
看看这个师兄的帖子,,http://bbs.itheima.com/forum.php?mod=viewthread&tid=11040,里面解答的很好。
作者: 李菁    时间: 2012-7-23 20:48
在HashSet()使用时候就会调用hashCode()方法。因为Set集合中每个元素都是不一样的,所以添加的元素和原存储的所有元素的hashCode值如果不一致,就直接添加;如果一致,比较equals方法,结果是true不添加,false添加。
在HashSet中,对应元素添加进set集合后,不要再去修改元素的值,因为修改后对应元素的hashCode的值发生变化,此时如果调用集合的remove方法,就不会得到正确的结果。
remove方法并不会正确移除掉对应元素,从而造成内存泄漏




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