AI-generated Key Takeaways
-
The
Iteratorinterface provides a way to iterate over a collection of elements, replacing the olderEnumerationinterface in Java Collections Framework. -
It allows removing elements from the underlying collection during iteration and offers improved method names.
-
Iteratorincludes methods likehasNext(),next(),remove(), andforEachRemaining()to facilitate element traversal and manipulation. -
ListIterator,PrimitiveIterator, andScannerare some of its known indirect subclasses, each offering specialized functionalities.
| Known Indirect Subclasses |
An iterator over a collection. Iterator takes the place of
Enumeration in the Java Collections Framework. Iterators
differ from enumerations in two ways:
- Iterators allow the caller to remove elements from the underlying collection during the iteration with well-defined semantics.
- Method names have been improved.
This interface is a member of the Java Collections Framework.
See Also
Public Method Summary
| void |
forEachRemaining(Consumer<? super E> action)
Performs the given action for each remaining element until all elements
have been processed or the action throws an exception.
|
| abstract boolean |
hasNext()
Returns
true if the iteration has more elements. |
| abstract E |
next()
Returns the next element in the iteration.
|
| void |
remove()
Removes from the underlying collection the last element returned
by this iterator (optional operation).
|
Public Methods
public void forEachRemaining (Consumer<? super E> action)
Performs the given action for each remaining element until all elements have been processed or the action throws an exception. Actions are performed in the order of iteration, if that order is specified. Exceptions thrown by the action are relayed to the caller.
Parameters
| action | The action to be performed for each element |
|---|
Throws
| NullPointerException | if the specified action is null |
|---|
public abstract boolean hasNext ()
Returns true if the iteration has more elements.
(In other words, returns true if next() would
return an element rather than throwing an exception.)
Returns
trueif the iteration has more elements
public abstract E next ()
Returns the next element in the iteration.
Returns
- the next element in the iteration
Throws
| NoSuchElementException | if the iteration has no more elements |
|---|
public void remove ()
Removes from the underlying collection the last element returned
by this iterator (optional operation). This method can be called
only once per call to next(). The behavior of an iterator
is unspecified if the underlying collection is modified while the
iteration is in progress in any way other than by calling this
method.
Throws
| UnsupportedOperationException | if the remove
operation is not supported by this iterator |
|---|---|
| IllegalStateException | if the next method has not
yet been called, or the remove method has already
been called after the last call to the next
method
|