我是靠谱客的博主 心灵美电话,这篇文章主要介绍List、Map集合删除元素的正确姿势,现在分享给大家,希望可以做个参考。

在阅读阿里巴巴规约的时候发现有一条规约是关于List的【不要在foreach里面进行元素的remove/add操作,remove请使用Iterator方式】。

原因

  • 关键点就是因为每次list.size()都会重新计算长度才会导致问题出现
    正确姿势:

for (Iterator<Map.Entry<String, String>> it = aMap.entrySet().iterator(); it.hasNext();){
Map.Entry<String, String> item = it.next();
if(item.getValue()==null) {
it.remove();
}
}
  • jdk1.8之后可使用removeIf,这里根上面是一样效果
 m1.entrySet().removeIf(item -> item.getValue() == null);
  • list同样有removeIf方法

最后

以上就是心灵美电话最近收集整理的关于List、Map集合删除元素的正确姿势的全部内容,更多相关List、Map集合删除元素内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(61)

评论列表共有 0 条评论

立即
投稿
返回
顶部