ConcurrentModificationException异常
在遍历一个集合时,当集合结构被修改,会抛出Concurrent Modification Exception。这是一种fail-fast(快速失败)机制。
在遍历List的过程中进行list.remove() ,相当于把list整个修改了
for循环遍历
for(int i=0;i<list.size();i++){
if(list.get(i).equals("def"))
list.remove(i);
}
会报ConcurrentModificationException异常
可通过迭代器iterator遍历
Iterator<String> it = list.iterator();
while(it.hasNext()){
String x = it.next();
if(x.equals("def")){
it.remove();
}
}
在使用移除的时候不要用list.remove()进行移除