报错:

解决办法:

先在for循环里面使用收集需要删除的元素,然后在集合外统一删

拓展:

为什么?

这是由于增强for循环底层调用的是迭代器的next和hasnext方法来遍历的,移除元素后,无法预知到元素的位置。这也是增强for的缺点,不能获取下标,不能动态删除集合中的内容。

那么用普通for循环取下标行不行?

不会报错了但是会发现没有删干净,原因是因为 这样会导致删除后索引改变,实际上少遍历了元素。

解决代码图:

在使用增强for循环的时候对遍历的集合进下remove操作报错java.util.ConcurrentModificationException相关推荐

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

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

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

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

  3. 增强for循环、Map接口遍历、可变參数方法

    增强for循环 1.for循环能做得事情.增强for循环大部分都能做(假设要想获得下标的时候就必须使用简单for循环了) 2.增强for有时候可以方便的处理集合遍历的问题,可是集合的标准遍历是使用迭代 ...

  4. Java基础知识 21(Set集合,HashSet集合以及它的三种遍历方式(迭代器,增强for循环,forEach),LinkedHashSet集合,TreeSet集合(自然排序法,比较器排序法))

    Java基础知识 21 Set集合 Set集合:一个不包含重复元素的Collection集合,元素不重复,List集合是允许元素重复的. Set接口的三个字类:HashSet(),LinkedHash ...

  5. java 循环删除hashmap中的键值对,解决java.util.ConcurrentModificationException报错

    示例 import java.util.HashMap; import java.util.Iterator; import java.util.Map;public class DeleteHash ...

  6. Java中的增强for循环的实现原理与坑

    点击上方"方志朋",选择"设为星标" 做积极的人,而不是积极废人 在JAVA中,遍历集合和数组一般有以下三种形式: for (int i = 0; i < ...

  7. 增强for循环,Map,集合应用

    3. 增强for循环 1) 作用: 对存储对象的容器进行迭代 2)  jdk5以前怎么迭代 3) 增强for循环迭代数组 String [] arr = {"a", "b ...

  8. 01-java基础加强,eclipse工具使用,快捷键,断点调试,单元测试,jdk5新特性,增强for循环,集合map,list,可变参数,枚举,反射,泛型

    一.eclipse工具的使用 1. java代码的位置 1) 选择工作空间 workspace  选择一个文件夹存放程序(代码) 不要用中文和空格 2) 新建一个java 工程(Project) 3) ...

  9. 大剑无锋之ArrayList中使用增强for循环能删除元素吗?【面试推荐】

    好久没写java代码,前几天面试被问到不少java的问题,其中一个接下来要说的. 先看几段代码. 第一段(集合中两个元素,判断条件是第一个元素) ArrayList<String> lis ...

最新文章

  1. 实例分割最新最全面综述:从Mask R-CNN到BlendMask
  2. Cinder 的 I/O QoS
  3. JspServlet之Cookie
  4. 2018-2019-20172329 《Java软件结构与数据结构》第九周学习总结
  5. html排序按钮_插件分享 | 可进行排序扫描任务的Task Queue
  6. [Bootstrap]组件(三)
  7. 暴风集团否认暴风TV公司解散:融资事项正在加紧推进中
  8. Java导出源程序_JAVA导出项目的所有源代码到一个文件
  9. 蓝牙模块耳机做蓝牙透传_WiFi、蓝牙在工业领域的数据透传应用_SKYLAB 无线模块...
  10. sql server 2008如何导入mdf,ldf文件
  11. win8 查看和更换密钥方法
  12. [Elasticsearch] 多字段搜索 (五) - 以字段为中心的查询
  13. 浩辰cad2017破解版|浩辰电气cad2017无限使用破解版下载
  14. iOSUILable边距设置
  15. 3年开发了5个私人项目:自动化办公、网站、机器人、小程序...免费开源,拿走不谢~
  16. java pdf添加文字水印(非常专业)
  17. 学生成绩管理系统-C语言(附源码)
  18. 如何使用Photoshop 2021给图片制作出渐变效果?
  19. 微信小程序从零开始开发步骤(一)
  20. iOS NSPredicate 模糊、精确、查询

热门文章

  1. (MATLAB/C/Python)快速中值滤波
  2. AT89C52实现篮球计分计时器,并通过proteus仿真
  3. 给html超链接设置事件
  4. Linux shell获取时间和时间间隔(ms级别)
  5. php shelleval,轻松掌握PHP函数eval()应用技巧
  6. iOS中使用Core Plot绘制统计图入门
  7. 逻辑回归——18-19NBA常规赛下半程赛事胜负预测
  8. 我自己学习做的“即时通”
  9. 可以Ping通和DNS解析,但打不开网页的解决办法
  10. 突破压缩极限的AI语音编解码器