Iterator迭代器ConcurrentModificationException异常
Posted teayear
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Iterator迭代器ConcurrentModificationException异常相关的知识,希望对你有一定的参考价值。
参考代码如下:
package day23;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;
public class Demo05It
public static void main(String[] args)
List list=new ArrayList<>();
//可以使用ListIterator
Iterator it=list.iterator();
list.add("aaa");
list.add("bbb");
//如果有了迭代器,也想继续加数据,不要针对原来的list;除非你迭代器遍历完毕;
while (it.hasNext())
Object obj = it.next();
System.out.println(obj);
System.out.println(list);
```使用迭代器 进行数据获取之后,再对原来的list进行追加,会导致ConcurrentModificationException异常。原因在于迭代器只是List的拷贝(镜像)。可以采用ListIterator it = list.listIterator();
将之前的代码修改为:
ListIterator it = list.listIterator();
it.add("aaa");
it.add("bbb");
以上是关于Iterator迭代器ConcurrentModificationException异常的主要内容,如果未能解决你的问题,请参考以下文章
用迭代器iterator遍历list中第一条数据和最后一条数据 并判断