What is the Difference Between Iterator and Enumeration in Java ?

Both Iterator and Enumeration are interfaces in Java to access Data Structures. The main differences between these are...

Enumeration is an older interface. Iterator is a newer interface.

Enumeration can only traverse legacy collections. Iterator can traverse both legacy as well as newer collections.

Enumeration does not provide remove() method. So we cannot remove any element during traversal. Iterator provides remove() method.

Iterator is a fail-fast interface, it gives ConcurrentModificationException if any thread tries to modify an element in the collection being iterated. Enumeration is not fail-fast.

Method names in Iterator are shorter than in an Enumeration.



You May Interest

Enumeration and Iterator, Which One Has Better Performance in Jav ...

Why Java Provides Garbage Collector ?

Why Should You Define a Default Constructor in Java ?

What is the Reason For Overriding equals Method in Java ?

What is the Difference Between wait and sleep Methods in Java ?