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

Why Do We Use Nested Classes in Java ?

What is the Different Type of Tag Library Groups in JSTL ?

What is the Difference Between an Iterator and ListIterator in Ja ...

What is Thread Starvation in Java ?

How Will You Implement a Thread Safe JSP Page ?