Junior
What is the difference between iteration and enumeration?
sobes.tech AI
Answer from AI
Iteration is the process of sequentially traversing elements of a collection, for example, using for or while loops. An iterator provides methods hasNext() to check for the next element and next() to retrieve the current element and move to the next.
Enumeration is a deprecated Java interface that also allows sequential traversal of collection elements. Unlike an iterator, Enumeration has methods hasMoreElements() and nextElement(). The main difference from Iterator is that Enumeration does not provide a safe way to remove elements during traversal. Additionally, Iterator appeared later and is more flexible and functional, supporting safe removal and working with various collection types.
| Feature | Iteration (Iterator) | Enumeration |
|---|---|---|
| Methods | hasNext(), next(), remove() |
hasMoreElements(), nextElement() |
| Safe removal | Yes | No |
| Introduced in | Java 1.2 | Java 1.0 |
| Used with | Most collections | Deprecated classes (Vector, Hashtable) |