增强for中操作集合元素的误区---java.util.ConcurrentModificationException
遍历集合,若同时对集合元素进行操作时(如删除等),要使用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相关推荐
- 循环体中对集合进行增删时报错:java.util.ConcurrentModificationException
先看一段代码: @Testpublic void test02(){List<String> list = new ArrayList<>(8);list.add(" ...
- 循环的时候去删除集合中的元素 java.util.ConcurrentModificationException
使用for循环,删除集合中的元素,会报错 java.util.ConcurrentModificationException 只能通过迭代器 iterator删除 1:在while循环中使用itera ...
- java——定义一个功能将ArrayList 集合中的重复元素删除(java集合七)
定义一个功能将ArrayList 集合中的重复元素删除 ArrayList 集合中是允许储存重复元素的 import java.util.ArrayList; import java.util.Ite ...
- [Google Guava] 2.3-强大的集合工具类:java.util.Collections中未包含的集合工具
原文链接 译文链接 译者:沈义扬,校对:丁一 尚未完成: Queues, Tables工具类 任何对JDK集合框架有经验的程序员都熟悉和喜欢java.util.Collections包含的工具方法.G ...
- java.util.ConcurrentModificationException: null异常(已解决,原因出自于Java集合的快速失败机制)
问题来源 今天我在写项目时,对集合中的元素做了以下操作 报错信息如图 问题来源: 在Java中对集合进行遍历时,一旦对集合进行增删操作,在遍历时会引起java.util.ConcurrentModif ...
- List中subList方法抛出异常java.util.ConcurrentModificationException原理分析
1.首先从测试代码开始: public class Test {public static void main(String[] args) {List<Integer> list = n ...
- java.util.ConcurrentModificationException: null异常由for增强循环嵌套增删引起。
问题: 在Java中对集合使用增强for循环时,一旦对集合进行增删操作,在遍历时会引起java.util.ConcurrentModificationException: null异常. 原因: 在官 ...
- 关于java.util.ConcurrentModificationException和remove倒数第二个元素
2019独角兽企业重金招聘Python工程师标准>>> 首先是两段代码的执行结果: 代码一: public class TestListRemove {public static v ...
- java subset_Java中的TreeSet的subSet()方法 Java.util.TreeSet.subSet() - Break易站
Java中的TreeSet Java.util.TreeSet.subSet()用于返回参数中提到的范围内现有TreeSet的子集.该方法采用上限和下限并返回该范围中提到的所有元素.如果元素存在于集合 ...
- java set iterator_Java中的TreeSet的iterator()方法 Java.util.TreeSet.iterator() - Break易站
Java中的TreeSet Java.util.TreeSet.iterator()方法用于返回与TreeSet相同元素的迭代器.元素以随机顺序从树集中的内容返回. 句法: Iterator iter ...
最新文章
- ubuntu14.04管理员密码忘记的解决方法
- Ubuntu Linux配置IP地址
- route 更改网络设置
- 360金融新任首席科学家:别指望AI Lab做成中台
- 采药问题 c语言程序,采药问题(动态规划)
- java获取jsp页面下拉列表框_jQuery+jsp下拉框联动获取本地数据的方法(附源码)
- MapX bug 和设计缺陷
- maya如何导出ue4_MAYA动画导出以及导入UE4的方式、方法
- fireworks8序列号:
- 服务器如何查询网站域名备案号,如何查询域名备案号
- 9.SpringCloud Gateway网关
- android手机进入reboot,android 静默重启 QUIESCENT REBOOT
- 【UI/UE设计师】banner设计原则-CSDN公开课-专题视频课程
- 百度apollo planning代码学习-Apollo\modules\planning\math\piecewise_jerk\PiecewiseJerkPathProblem类代码详解
- drill apache_大数据SQL:Apache Drill查询执行功能概述–白板演练
- 联手百度腾讯,恒大汽车押注智能化
- 人脸识别之人脸验证(二)--DeepID
- linux电脑自启动,caddyserver在linux系统下设置开机启动
- 七、HTMLTestRunner生成测试报告
- Android 4权威专家撰写,经典作品最新升级版(内附部分章节试读下载地址)
热门文章
- 在SharePoint 2013中显示“以其他用户身份登录”
- android 蓝牙编程重点---如何发送和接收16进制数据
- 用swing开发 震撼的CSDN用户关系图(转)和基于JMF的java rpg入门游戏
- window命令行启动Mysql并安装服务
- 信息安全产业爆发在即 十三五年均增长将达20%以上
- 如果你的年龄在35~55岁之间,一定要看这张图
- JS判断浏览器语言及终端类型(android/ios)
- LocalBroadcastManager分析
- netbeans-xdebug
- JavaScript通用库(转)