在使用增强for循环的时候对遍历的集合进下remove操作报错java.util.ConcurrentModificationException
报错:
解决办法:
先在for循环里面使用收集需要删除的元素,然后在集合外统一删
拓展:
为什么?
这是由于增强for循环底层调用的是迭代器的next和hasnext方法来遍历的,移除元素后,无法预知到元素的位置。这也是增强for的缺点,不能获取下标,不能动态删除集合中的内容。
那么用普通for循环取下标行不行?
不会报错了但是会发现没有删干净,原因是因为 这样会导致删除后索引改变,实际上少遍历了元素。
解决代码图:
在使用增强for循环的时候对遍历的集合进下remove操作报错java.util.ConcurrentModificationException相关推荐
- 循环的时候去删除集合中的元素 java.util.ConcurrentModificationException
使用for循环,删除集合中的元素,会报错 java.util.ConcurrentModificationException 只能通过迭代器 iterator删除 1:在while循环中使用itera ...
- java.util.ConcurrentModificationException: null异常由for增强循环嵌套增删引起。
问题: 在Java中对集合使用增强for循环时,一旦对集合进行增删操作,在遍历时会引起java.util.ConcurrentModificationException: null异常. 原因: 在官 ...
- 增强for循环、Map接口遍历、可变參数方法
增强for循环 1.for循环能做得事情.增强for循环大部分都能做(假设要想获得下标的时候就必须使用简单for循环了) 2.增强for有时候可以方便的处理集合遍历的问题,可是集合的标准遍历是使用迭代 ...
- Java基础知识 21(Set集合,HashSet集合以及它的三种遍历方式(迭代器,增强for循环,forEach),LinkedHashSet集合,TreeSet集合(自然排序法,比较器排序法))
Java基础知识 21 Set集合 Set集合:一个不包含重复元素的Collection集合,元素不重复,List集合是允许元素重复的. Set接口的三个字类:HashSet(),LinkedHash ...
- java 循环删除hashmap中的键值对,解决java.util.ConcurrentModificationException报错
示例 import java.util.HashMap; import java.util.Iterator; import java.util.Map;public class DeleteHash ...
- Java中的增强for循环的实现原理与坑
点击上方"方志朋",选择"设为星标" 做积极的人,而不是积极废人 在JAVA中,遍历集合和数组一般有以下三种形式: for (int i = 0; i < ...
- 增强for循环,Map,集合应用
3. 增强for循环 1) 作用: 对存储对象的容器进行迭代 2) jdk5以前怎么迭代 3) 增强for循环迭代数组 String [] arr = {"a", "b ...
- 01-java基础加强,eclipse工具使用,快捷键,断点调试,单元测试,jdk5新特性,增强for循环,集合map,list,可变参数,枚举,反射,泛型
一.eclipse工具的使用 1. java代码的位置 1) 选择工作空间 workspace 选择一个文件夹存放程序(代码) 不要用中文和空格 2) 新建一个java 工程(Project) 3) ...
- 大剑无锋之ArrayList中使用增强for循环能删除元素吗?【面试推荐】
好久没写java代码,前几天面试被问到不少java的问题,其中一个接下来要说的. 先看几段代码. 第一段(集合中两个元素,判断条件是第一个元素) ArrayList<String> lis ...
最新文章
- mysql truncate drop_详解MySQL中DROP,TRUNCATE 和DELETE的区别实现mysql从零开始 | 很文博客...
- C语言用‘%20‘替换字符串中的所有空格的算法(附完整源码)
- NAMENODE工作机制,元数据管理(元数据存储机制、元数据手动查看)、元数据的checkpoint、元数据目录说明(来自学习资料)
- 【产品干货】经典营销模型的产品化介绍
- mysql创建数据库schooldb_mysql创建新用户和数据库
- PHP中如何判断属性类型,php – 如何获取doctrine实体属性的类型
- mysql性能问题处理_1个困扰我3个多月没解决的mysql性能问题
- SpringBoot | 第十四章:基于Docker的简单部署
- 理解vue中的父组件,子组件
- 7-19 求链式线性表的倒数第K项
- php的process_field,使用Boost :: Process运行php命令
- paip.DEVSUITE DEVTEST 404错误
- 计算机组成第五章课后答案,计算机组成原理第五章答案
- CAJ文件转PDF的简单方法
- 加菲猫语录精选74 中英俄三语版
- 关于 Windows 10 下原生输入法输入字母和数字时字间距突然变大的解决方法
- 计算机远程用户关机指令,详细介绍一个远程关机命令
- 最近深圳出现了一些骗子公司,职场的朋友一定要小心了
- 仿蘑菇街,京东,苏宁易购,海尔商城等33套大气购物商城网站模板,附源码免费下载地址...
- 不染计算机音乐谱大全,不染钢琴谱-毛不易-完美版
热门文章
- 撰写CSDN常用快捷键/功能键
- Node.js_exports和module.exports
- HTML+CSS+JS 学习笔记(一)———HTML(上)
- 为什么view的setOnClickListener引用Activity不会内存泄漏
- 数字集成电路:CMOS反相器(一)静态特性
- 纸片人算什么?教你造真“3D小姐姐”!可以动的模型
- 微信公众号网页授权开发
- 赛门铁克企业版中DOscan和Rtvscan进程占用大量内存的解决办法
- MySQL的DDL、DML和DQL的基本语法
- 计算机学院三行情书,各大学最美三行情书精选