概述
为什么80%的码农都做不了架构师?>>>
1.首先声明,如果想根据value删除map中的元素,使用map.remove(value)这个方法是错误的、 可以使用以下一段程序验证之:
<!-- lang: java -->
Map<String, String> map = new HashMap<String, String>();
map.put("1", "11");
map.put("2", "22");
map.put("3", "33");
map.put("4", "44");
System.out.println(map.get("3"));
// 显然map.remove方法的参数是key,不是value
map.remove("33");
System.out.println(map.get("3"));
打印结果:
33
33
所以,执行的remove方法没起到删除元素的作用。 究其原因,可以看下remove方法的api对该方法参数的解释 :Parameters: key key whose mapping is to be removed from the map, 意思是大概要从map中删除元素的key,即参数不是value,而是key, 如果执行map.remove("3"), 程序打印结果就是:
33
null
2.所以直接使用上面方法不对,这是一个误区。 可以使用以下方法: Collection<String> col = map.values(); System.out.println(map.get("3")); col.remove("33"); System.out.println(map.get("3")); 打印结果:
<!-- lang: java -->
33
<!-- lang: java -->
null
转载于:https://my.oschina.net/beanGo/blog/270779
最后
以上就是激情航空为你收集整理的HashMap根据value删除元素的全部内容,希望文章能够帮你解决HashMap根据value删除元素所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复