遍历集合,若同时对集合元素进行操作时(如删除等),要使用Iterator迭代器

public List<Map<String,Object>> deleList(List<Map<String,Object>> materielMainList,String pinhao){Iterator<Map<String, Object>> iterator = materielMainList.iterator();while (iterator.hasNext()) {Map<String,Object> temp = iterator.next();String ph = temp.get("PINGHAO")+"";if(pinhao.equals(ph)){iterator.remove();}}/*错误代码for(Map<String,Object> tempmap : materielMainList){String ph = tempmap.get("PINGHAO")+"";if(pinhao.equals(ph)){materielMainList.remove(tempmap);}}*/return materielMainList;}

报错信息:

java.util.ConcurrentModificationExceptionat java.util.ArrayList$Itr.checkForComodification(ArrayList.java:901)at java.util.ArrayList$Itr.next(ArrayList.java:851)at com.ekingwin.bas.rest.service.MaterielMainService.deleList(MaterielMainService.java:188)

详细分析请参考:
java.util.ConcurrentModificationException 异常问题详解

增强for中操作集合元素的误区---java.util.ConcurrentModificationException相关推荐

  1. 循环体中对集合进行增删时报错:java.util.ConcurrentModificationException

    先看一段代码: @Testpublic void test02(){List<String> list = new ArrayList<>(8);list.add(" ...

  2. 循环的时候去删除集合中的元素 java.util.ConcurrentModificationException

    使用for循环,删除集合中的元素,会报错 java.util.ConcurrentModificationException 只能通过迭代器 iterator删除 1:在while循环中使用itera ...

  3. java——定义一个功能将ArrayList 集合中的重复元素删除(java集合七)

    定义一个功能将ArrayList 集合中的重复元素删除 ArrayList 集合中是允许储存重复元素的 import java.util.ArrayList; import java.util.Ite ...

  4. [Google Guava] 2.3-强大的集合工具类:java.util.Collections中未包含的集合工具

    原文链接 译文链接 译者:沈义扬,校对:丁一 尚未完成: Queues, Tables工具类 任何对JDK集合框架有经验的程序员都熟悉和喜欢java.util.Collections包含的工具方法.G ...

  5. java.util.ConcurrentModificationException: null异常(已解决,原因出自于Java集合的快速失败机制)

    问题来源 今天我在写项目时,对集合中的元素做了以下操作 报错信息如图 问题来源: 在Java中对集合进行遍历时,一旦对集合进行增删操作,在遍历时会引起java.util.ConcurrentModif ...

  6. List中subList方法抛出异常java.util.ConcurrentModificationException原理分析

    1.首先从测试代码开始: public class Test {public static void main(String[] args) {List<Integer> list = n ...

  7. java.util.ConcurrentModificationException: null异常由for增强循环嵌套增删引起。

    问题: 在Java中对集合使用增强for循环时,一旦对集合进行增删操作,在遍历时会引起java.util.ConcurrentModificationException: null异常. 原因: 在官 ...

  8. 关于java.util.ConcurrentModificationException和remove倒数第二个元素

    2019独角兽企业重金招聘Python工程师标准>>> 首先是两段代码的执行结果: 代码一: public class TestListRemove {public static v ...

  9. java subset_Java中的TreeSet的subSet()方法 Java.util.TreeSet.subSet() - Break易站

    Java中的TreeSet Java.util.TreeSet.subSet()用于返回参数中提到的范围内现有TreeSet的子集.该方法采用上限和下限并返回该范围中提到的所有元素.如果元素存在于集合 ...

  10. java set iterator_Java中的TreeSet的iterator()方法 Java.util.TreeSet.iterator() - Break易站

    Java中的TreeSet Java.util.TreeSet.iterator()方法用于返回与TreeSet相同元素的迭代器.元素以随机顺序从树集中的内容返回. 句法: Iterator iter ...

最新文章

  1. ubuntu14.04管理员密码忘记的解决方法
  2. Ubuntu Linux配置IP地址
  3. route 更改网络设置
  4. 360金融新任首席科学家:别指望AI Lab做成中台
  5. 采药问题 c语言程序,采药问题(动态规划)
  6. java获取jsp页面下拉列表框_jQuery+jsp下拉框联动获取本地数据的方法(附源码)
  7. MapX bug 和设计缺陷
  8. maya如何导出ue4_MAYA动画导出以及导入UE4的方式、方法
  9. fireworks8序列号:
  10. 服务器如何查询网站域名备案号,如何查询域名备案号
  11. 9.SpringCloud Gateway网关
  12. android手机进入reboot,android 静默重启 QUIESCENT REBOOT
  13. 【UI/UE设计师】banner设计原则-CSDN公开课-专题视频课程
  14. 百度apollo planning代码学习-Apollo\modules\planning\math\piecewise_jerk\PiecewiseJerkPathProblem类代码详解
  15. drill apache_大数据SQL:Apache Drill查询执行功能概述–白板演练
  16. 联手百度腾讯,恒大汽车押注智能化
  17. 人脸识别之人脸验证(二)--DeepID
  18. linux电脑自启动,caddyserver在linux系统下设置开机启动
  19. 七、HTMLTestRunner生成测试报告
  20. Android 4权威专家撰写,经典作品最新升级版(内附部分章节试读下载地址)

热门文章

  1. 在SharePoint 2013中显示“以其他用户身份登录”
  2. android 蓝牙编程重点---如何发送和接收16进制数据
  3. 用swing开发 震撼的CSDN用户关系图(转)和基于JMF的java rpg入门游戏
  4. window命令行启动Mysql并安装服务
  5. 信息安全产业爆发在即 十三五年均增长将达20%以上
  6. 如果你的年龄在35~55岁之间,一定要看这张图
  7. JS判断浏览器语言及终端类型(android/ios)
  8. LocalBroadcastManager分析
  9. netbeans-xdebug
  10. JavaScript通用库(转)