ArrayList remove时报ConcurrentModificationException

ArrayList remove时报ConcurrentModificationException:程序员

ConcurrentModificationException 这错误自己是为“提醒”程序员正在并发【修改Arraylist数据和循环读取Arraylist数据结构】, 由于ArrayList 不是写线程安全的数据结构,因此会报ConcurrentModificationException, Arraylist不是一个同步循环和删除为目的数据结构。安全


若是非要删除ArrayList里的元素,可以使用iterator数据结构

  1. Iterator<String> iter = list.iterator();  并发

  2. while(iter.hasNext()){  spa

  3.     String s = iter.next();  线程

  4.     if(s.equals("xxx")){  rem

  5.         iter.remove();  同步

  6.     }  it

  7. }  io

的方式删除。

相关文章
相关标签/搜索