Доброго времени суток! Подскажите, пожалуйста, почему при использовании итератора не получается удаление всех элементов в списке, а завершается ошибкой Exception in thread "main" java.lang.IllegalStateException at java.base/java.util.ArrayList$Itr.remove(ArrayList.java:1009)? Ведь, по идее, удаление будет до тех пор, пока эти элементы есть, а потом завершение.
public static void remove10000(List list) {
        Iterator itr = list.iterator();
        while (itr.hasNext())
            itr.remove();
    }