今天用for循环遍历集合,对集合中满足条件的元素进行remove操作报错:ConcurrentModificationException

所以,在遍历集合进行增、删操作时,要使用迭代器的方式

public static void main(String[] args) {IwbUsage iu = new IwbUsage();iu.setIp("100");List<IwbUsage> iuList = new ArrayList<>();iuList.add(iu);System.out.println(iuList.size());Iterator<IwbUsage> iterator = iuList.iterator();while(iterator.hasNext()) {IwbUsage iwbUsage = iterator.next();System.out.println(iwbUsage);if ("10".equals(iwbUsage.getIp())) {iterator.remove();}}
System.out.println(iuList.size());
}

注意:要使用迭代器进行删除iterator.remove();不可以用迭代器遍历集合时用集合的删除方式iuList.remove(iwbUsage )否则会抛异常:ConcurrentModificationException

至于原因:https://www.cnblogs.com/pcheng/p/5336903.html

转载于:https://www.cnblogs.com/wang-liang-blogs/p/10644604.html

java中对集合操作的易错点01相关推荐

  1. 万字长文深入理解java中的集合-附PDF下载

    文章目录 1. 前言 2. List 2.1 fail-safe fail-fast知多少 2.1.1 Fail-fast Iterator 2.1.2 Fail-fast 的原理 2.1.3 Fai ...

  2. java中的集合框架_JAVA中的集合框架(上)List

    第一节 JAVA中的集合框架概述 集合的概念,现实生活中:很多事物凑在一起就是一个集合:数学中的集合:具有相同属性事物的总体:JAVA中的集合:是一种工具类,就像是容器,储存任意数量的具有共同属性的对 ...

  3. java 中的集合_JAVA中的集合

    JAVA中集合,是java中的基础概念,今天接着跟讲课准备课件的机会,重新整理一下关于JAVA中的集合的概念. 集合的概念 java中的集合类是用来存放对象的 集合相当于一个容器,里面包容着一组对象- ...

  4. Java中的集合多线程的理解

    Java中的集合 1.List.Set和Queue [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DwpgIu9t-1587300088779)(file:///C:\ ...

  5. Java中Set集合是如何实现添加元素保证不重复的?

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源 | 公众号「武培轩」 Java中Set集合是如何实 ...

  6. java中各种集合的用法和比较

    一,java中各种集合的关系图 Collection       接口的接口     对象的集合  ├ List           子接口         按进入先后有序保存   可重复  │├ L ...

  7. java中的集合_Java 集合介绍,常用集合类

    JAVA 集合 在处理数据的过程中经常会需要一个容器来存储某一类型的数据,Java 中的数组就是这样一种容器.但 Java 中的数组有其局限性,定义后的数组长度不可变,超出数组长度后就不能再存放数据了 ...

  8. Java中List集合的三种遍历方式(全网最详)

    Map集合:链接: Map集合的五种遍历方式及Treemap方法 Set集合:链接: Java中遍历Set集合的三种方法 TreeSet集合:链接: Java深入了解TreeSet,和迭代器遍历方法 ...

  9. 10.JAVA中的集合(数据结构)

    Java中的集合 包含以下结构: 数组-线性表 链表 栈 队列 散列表 二叉树 映射关系(key-value) List集合  特点:[有序.重复] [线性表--数组] ArrayList 定义 线程 ...

最新文章

  1. RHEL7中防火墙firewalld的配置
  2. 聊聊spring cloud的DefaultEurekaServerContext
  3. bootstrap框架中data-xxx 的属性
  4. 数控程序中r及q代表什么_你想学会数控宏程序编程,推荐你套数控编程教程
  5. Coins and Queries(map迭代器+贪心)
  6. php 自动选择时间的代码,JavaScript_extjs 时间范围选择自动判断的实现代码,extjs中 有时需要选择一个日期 - phpStudy...
  7. IDEA 创建java项目
  8. ascii码值为负数_C语言字符型数据的ASCII码值为何是负数?
  9. Hive面试题系列-连续登录问题1
  10. 如何才能提高团队工作效率
  11. PHP 微信公众号和html5接入微信支付
  12. 新款macbook pro发布了,但为什么不推荐购买
  13. NLM(Non-Local means)算法原理
  14. 字节面试官推荐的一份 Java 基础面试题!太顶了
  15. 华院计算|切比雪夫,他带起了俄罗斯现代数学的发展
  16. 无绿幕实景抠图、AI抠图
  17. 照片墙------逗女孩儿开心
  18. 女子监狱第四季/全集Orange Is the New Black迅雷下载
  19. 如何让你的阿里博客排在百度的首页
  20. 你所不了解的TypeScript 类型编程

热门文章

  1. Linux下mysql 5.x得到root密码后的另外一种利用方式
  2. step3 . day5 数据结构之线性表 栈和队的应用-球钟问题
  3. 【css】常用的几种水平垂直居中方式与盒子模型,面试经常问到!
  4. 在Windows 2003中集成RAID卡驱动
  5. Ubuntu系统目录结构
  6. Shell脚本编程----变量的使用
  7. Exception in thread main java.lang.NullPointerException
  8. SCVMM 2012 R2运维管理十三之:将资源添加到VMM库
  9. 【转】如何修改Chrome缓存目录的地址
  10. 2017 Material design 第四章第三节《度量和参考线》