现在的位置: 首页 > 综合 > 正文

Java集合HashSet的hashcode方法引起的内存泄漏问题

2012年11月17日 ⁄ 综合 ⁄ 共 2113字 ⁄ 字号 评论关闭

 

运行结果:

 

总共有:3 个元素!

总共有:4 个元素!

猪八戒-->pwd3-->2

孙悟空-->pwd2-->26

唐僧-->pwd1-->25

猪八戒-->pwd3-->2

总结:
HashSet中,在对应元素添加进set集合后,不要再去修改元素的值,否则对应元素的hashcode值发生变化,此时如果调用
集合的remove(),contains()方法,将不会得到正确的结果。remove()方法并不能正确remove掉对应的元素,造成内存泄漏。

 

 

Person.java 

  

抱歉!评论已关闭.