title: Why iterators are called fail safe or fail fast?
body: <p>Why are iterators called "fail-safe" and "fail-fast" even though <code>Iterator.remove()</code> doesn't throw any <code>ConcurrentModificationException</code> while iterating through a <code>Collection</code> (for example, <code>HashMap</code>) using <code>Iterator</code> ?</p>