Why
List list = new ArrayList();
list.add("1");
list.add("2");
list.add("3");
list.stream().forEach(
s->{
System.out.println(s);
list.add(s+"add");
}
);
Throws ConcurrentModificationException only after all output:
1
2
3
java.util.ConcurrentModificationException
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1661)
? It seems it should be done after 1, isn't it?