java ArrayList/forloop
我的问题很简单:listeBalles
是一个ArrayList<Balle>
,下面是我的代码:
for (Balle b : listeBalles) {
b.changeList(listeBalles);
}
问题是,方法b.changeList
向ArrayList listeBalles
添加了一个Balle。我认为这就是问题所在。以下是例外情况:
Exception in thread "main" java.util.ConcurrentModificationException
at java.util.AbstractList$Itr.checkForComodification(AbstractList.java:372)
at java.util.AbstractList$Itr.next(AbstractList.java:343)
at Main.main(Main.java:31)
所指的线是for (Balle b : listeBalles) {
线
谢谢你的帮助
# 1 楼答案
由于无法将元素添加到当前迭代的
ArrayList
,请先复制该列表例如,尝试:
# 2 楼答案
在for-each循环中对集合或数组进行迭代时,不能修改其内容。你到底想做什么