我正在为学校做一个项目,但我现在有点卡住了
我的问题是我有一个正方形数组列表每个正方形都有一个值(从 0 到 100)。它的起始值为 9999,所以我可以检查它是否被选中。如果选中了一个正方形,我希望将其从 arrayList 中删除。所以过了一会儿就没有正方形了。
有一些代码设置了第一个值,这就是为什么我检查值是否为 9999。
但我得到一个错误。一个我以前没见过的。
线程“AWT-EventQueue-0”中的异常 java.util.ConcurrentModificationException
Vak = 正方形
这是我的代码:
while (!vakken.isEmpty()) { // check if empty
Iterator itrVak = vakken.iterator();
while (itrVak.hasNext()) {
Vak vak = (Vak) itrVak.next(); // here is get the error
if (vak.getValue() != 9999) {// check if square value is 9999
Collection checkVakken = vak.getNeighbour().values();
Iterator itre = checkVakken.iterator();
while (itre.hasNext()) {
Vak nextVak = (Vak) itre.next();
if (nextVak != null) {
if (nextVak.getValue() == 9999) {
nextVak.setValue(vak.getValue() + 1); // set value by its neighbour
vakken.remove(vak);
checkvakken.add(vak);
}
}
}
} else {
vakken.remove(vak);
checkvakken.add(vak);
}
}
}