Во многих местах я видел, что при удалении элемента из ArrayList во время итерации я должен использовать метод удаления итератора вместо метода удаления коллекций, чтобы избежать исключения одновременной модификации.
Однако приведенный ниже код отлично работает с использованием удаления коллекции Java 1.8 без исключения одновременной модификации. Вы можете видеть, что я не использую здесь итератор для удаления объекта.
List<MyObject> list = new ArrayList<MyObject>();
list.add(new MyObject());
list.add(new MyObject());
list.add(new MyObject());
for (int i=0; i<list.size(); i++) {
list.remove(i);
}
ConcurrentModificationException
? - person Mark Rotteveel   schedule 24.09.2017