当我执行以下代码时,我想知道背后到底发生了什么:
List<Object> list = new ArrayList<Object>();
fillTheList(); // Filling a list with 10 objects
int count = 0;
for (Object o : list) {
count++;
if (count == 5) {
list.remove(count);
}
o.toString();
}
当元素被删除后,我会收到ConcurrentModificationException
异常。
我不明白为什么在删除一个元素后,就无法取出集合中的下一个可用元素并继续循环。