首页 > 其他 > 详细

hashCode对Map的影响

时间:2017-10-09 17:27:54      阅读:301      评论:0      收藏:0      [点我收藏+]

// TODO Auto-generated method stub
Map<point, Integer> map=new HashMap<point,Integer>();
point p=new point(1, 2);
map.put(p, 100);
Integer i=map.get(p);
System.out.println(i);
/**
* 改变key的hashCode的值
* 这组数据,不再被指向
* 从一个新的内存中是空的去取得 value
* 空了
*/
p.setX(2);
i=map.get(p);
System.out.println(i);
/**
* 此时的Map中还是含有原来的数据
*/
System.out.println(map);
/**
* 在重新存入,修改后的p
* 原来的空内存,有值了
*/
map.put(p, 200);
System.out.println(map);
/**
* 删除200
*
*/
map.remove(p);
System.out.println(map);
/**
* 删除100的
* 需要把指针指向 原来的值
*/
p.setX(1);
map.remove(p);
System.out.println(map);

}

 

重写equals方法时必须重写hasCode方法,避免在散列表中
* 出现问题

hashCode对Map的影响

原文:http://www.cnblogs.com/nextgg/p/7641836.html

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