Package com.google.common.collect
Class AbstractSequentialIterator<T>
- java.lang.Object
- 
- com.google.common.collect.UnmodifiableIterator<T>
- 
- com.google.common.collect.AbstractSequentialIterator<T>
 
 
- 
- All Implemented Interfaces:
- java.util.Iterator<T>
 
 @GwtCompatible public abstract class AbstractSequentialIterator<T> extends UnmodifiableIterator<T> This class provides a skeletal implementation of theIteratorinterface for sequences whose next element can always be derived from the previous element. Null elements are not supported, nor is theUnmodifiableIterator.remove()method.Example: Iterator<Integer> powersOfTwo = new AbstractSequentialIterator<Integer>(1) { protected Integer computeNext(Integer previous) { return (previous == 1 << 30) ? null : previous * 2; } };- Since:
- 12.0 (in Guava as AbstractLinkedIteratorsince 8.0)
- Author:
- Chris Povirk
 
- 
- 
Constructor SummaryConstructors Modifier Constructor Description protectedAbstractSequentialIterator(T firstOrNull)Creates a new iterator with the given first element, or, iffirstOrNullis null, creates a new empty iterator.
 - 
Method SummaryAll Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract TcomputeNext(T previous)Returns the element that followsprevious, or returnsnullif no elements remain.booleanhasNext()Tnext()- 
Methods inherited from class com.google.common.collect.UnmodifiableIteratorremove
 
- 
 
- 
- 
- 
Constructor Detail- 
AbstractSequentialIteratorprotected AbstractSequentialIterator(@CheckForNull T firstOrNull) Creates a new iterator with the given first element, or, iffirstOrNullis null, creates a new empty iterator.
 
- 
 - 
Method Detail- 
computeNext@CheckForNull protected abstract T computeNext(T previous) Returns the element that followsprevious, or returnsnullif no elements remain. This method is invoked during each call tonext()in order to compute the result of a future call tonext().
 - 
hasNextpublic final boolean hasNext() 
 
- 
 
-