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

What is the Difference Between pass by reference and pass by valu ...

Why Do We Use Static Initializers in Java ?

What is a CAS Operation in Java ?

How Will You Delete a Cookie in JSP ?

How Can We Reference an Unreferenced Object Again in Java ?