|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.commons.collections4.iterators.IteratorIterable<E>
public class IteratorIterable<E>
Adapter to make an Iterator
instance appear to be an
Iterable
instance. The iterable can be constructed in one
of two variants: single use, multiple use.
In the single use iterable case, the iterable is only usable for one
iterative operation over the source iterator. Subsequent iterative
operations use the same, exhausted source iterator. To create a single use
iterable, construct a new IteratorIterable
using a Iterator
that is NOT a ResettableIterator
iterator:
Iteratoriterator = // some non-resettable iterator Iterable iterable = new IteratorIterable (iterator);
In the multiple use iterable case, the iterable is usable for any number of
iterative operations over the source iterator. Of special note, even though
the iterable supports multiple iterations, it does not support concurrent
iterations. To implicitly create a multiple use iterable, construct a new
IteratorIterable
using a ResettableIterator
iterator:
Integer[] array = {Integer.valueOf(1),Integer.valueOf(2),Integer.valueOf(3)}; Iteratoriterator = IteratorUtils.arrayIterator(array); // a resettable iterator Iterable iterable = new IteratorIterable (iterator);
A multiple use iterable can also be explicitly constructed using any
Iterator
and specifying true
for the
multipleUse
flag:
Iteratoriterator = // some non-resettable iterator Iterable iterable = new IteratorIterable (iterator, true);
Constructor Summary | |
---|---|
IteratorIterable(Iterator<? extends E> iterator)
Constructs a new IteratorIterable that will use the given
iterator. |
|
IteratorIterable(Iterator<? extends E> iterator,
boolean multipleUse)
Constructs a new IteratorIterable that will use the given
iterator. |
Method Summary | |
---|---|
Iterator<E> |
iterator()
Gets the iterator wrapped by this iterable. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public IteratorIterable(Iterator<? extends E> iterator)
IteratorIterable
that will use the given
iterator.
iterator
- the iterator to use.public IteratorIterable(Iterator<? extends E> iterator, boolean multipleUse)
IteratorIterable
that will use the given
iterator.
iterator
- the iterator to use.multipleUse
- true
if the new iterable can be used in multiple iterationsMethod Detail |
---|
public Iterator<E> iterator()
iterator
in interface Iterable<E>
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |