в моей программе Я создал команды (например, футбол), и теперь я хочу создать метод, в котором каждая команда будет играть против всех других команд. Мой метод генерирует исключение ConcurrentModificationException. Вот оно:Избегайте ConcurrentModificationException при использовании вложенных for-loops в Java
public void playMatches(){
for (Team team : mTeams) {
mTeams.remove(team);
for (Team team1 : mTeams) {
match(team, team1);
}
mTeams.add(team);
}
}
Я удаляю команде себя от mTeams, так что он не играет против себя, но это бросает исключение. Как я могу справиться с этим?
Возможный дубликат [Итерирование по списку, исключение ConcurrentModificationException при удалении в цикле] (http://stackoverflow.com/questions/223918/iterating-through-a-list-avoiding-concurrentmodificationexception- при удалении) – Turing85
@ Turing85 Это не очень хороший дубликат, потому что OP может полностью избежать модификаций, вместо того, чтобы делать изменения. – dasblinkenlight
Это не дублирование. Он также добавляет элементы в список. Не только удалить их. –