Package com.google.common.collect
Interface PeekingIterator<E extends @Nullable Object>
-
- All Superinterfaces:
Iterator<E>
@DoNotMock("Use Iterators.peekingIterator") @GwtCompatible public interface PeekingIterator<E extends @Nullable Object> extends Iterator<E>
An iterator that supports a one-element lookahead while iterating.See the Guava User Guide article on
PeekingIterator
.- Since:
- 2.0
- Author:
- Mick Killianey
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description E
next()
Returns the next element in the iteration.E
peek()
Returns the next element in the iteration, without advancing the iteration.void
remove()
Removes from the underlying collection the last element returned by this iterator (optional operation).-
Methods inherited from interface java.util.Iterator
forEachRemaining, hasNext
-
-
-
-
Method Detail
-
peek
E peek()
Returns the next element in the iteration, without advancing the iteration.Calls to
peek()
should not change the state of the iteration, except that it may prevent removal of the most recent element viaremove()
.- Throws:
NoSuchElementException
- if the iteration has no more elements according toIterator.hasNext()
-
next
@CanIgnoreReturnValue E next()
-
remove
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 toIterator.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, unless an overriding class has specified a concurrent modification policy.
The behavior of an iterator is unspecified if this method is called after a call to the
forEachRemaining
method.Implementations may or may not support removal when a call to
peek()
has occurred since the most recent call tonext()
.
-
-