Ca va dépendre de la collection sur laquelle tu itères. En général avec les implémentations de base du JDK (ArrayList, HashMap, HashSet) tu vas rencontrer une ConcurrentModificationException si tu touches à la collection sans passer par l'iterateur, mais ce n'est pas vrai pour toutes les collections. Real a bien raison en te renvoyant à la Javadoc, on invente rien c'est marqué très clairement dedans, par exemple pour ArrayList :
"The iterators returned by this class's iterator and listIterator methods are fail-fast: if list is structurally modified at any time after the iterator is created, in any way except through the iterator's own remove or add methods, the iterator will throw a ConcurrentModificationException. Thus, in the face of concurrent modification, the iterator fails quickly and cleanly, rather than risking arbitrary, non-deterministic behavior at an undetermined time in the future."
En résumé: Ca dépend de l'implémentation de la collection, et il faut lire la Javadoc pour le savoir.
---------------
Commons Configuration - http://jakarta.apache.org/commons/configuration