私は次のようなforループを持っています
for (int neighbour : neighbours) {
neighbours
ループ内で変更できる場所。それがの原因であることがわかりましたConcurrentModificationException
。そしてhttps://stackoverflow.com/a/8189527/292291から読んでください
したがって、リスト(または一般的なコレクション)を変更する場合は、 イテレーターを使用します。これは、変更を認識しているため、それらが適切に処理されるためです。
だから私は試しました:
neighboursItr = neighbours.iterator();
while (neighboursItr.hasNext()) {
// try disconnecting vertices
neighbour = neighboursItr.next();
しかし、それでは問題は解決しません。なんで?