Question: why iterator is fail fast?
Answer: Fail-Fast iterators immediately throw ConcurrentModificationException if a collection is modified while iterating over it. Where as Fail-Safe iterators don't throw any exceptions if a collection is modified while iterating over it. Because, they operate on the clone of the collection, not on the actual collection.