org.apache.commons.collections.iterators
public class CollatingIterator extends java.lang.Object implements java.util.Iterator
Iterator
s. In other words,
given two ordered Iterator
s A
and B
,
my next()
method will return the lesser of
A.next()
and B.next()
.Constructor and Description |
---|
CollatingIterator()
Constructs a new
CollatingIterator . |
CollatingIterator(java.util.Comparator comp)
Constructs a new
CollatingIterator that will used the
specified comparator for ordering. |
CollatingIterator(java.util.Comparator comp,
java.util.Collection iterators)
Constructs a new
CollatingIterator that will use the
specified comparator to provide ordered iteration over the collection
of iterators. |
CollatingIterator(java.util.Comparator comp,
int initIterCapacity)
Constructs a new
CollatingIterator that will used the
specified comparator for ordering and have the specified initial
capacity. |
CollatingIterator(java.util.Comparator comp,
java.util.Iterator[] iterators)
Constructs a new
CollatingIterator that will use the
specified comparator to provide ordered iteration over the array
of iterators. |
CollatingIterator(java.util.Comparator comp,
java.util.Iterator a,
java.util.Iterator b)
Constructs a new
CollatingIterator that will use the
specified comparator to provide ordered iteration over the two
given iterators. |
Modifier and Type | Method and Description |
---|---|
void |
addIterator(java.util.Iterator iterator)
Add the given
Iterator to my collection to collate. |
java.util.Comparator |
getComparator()
Get the
Comparator by which I collate. |
java.util.List |
getIterators()
Get the list of Iterators (unmodifiable)
|
boolean |
hasNext()
Returns
true if any child iterator has remaining elements. |
java.lang.Object |
next()
Returns the next ordered element from a child iterator.
|
void |
remove()
Removes the last returned element from the child iterator that
produced it.
|
void |
setComparator(java.util.Comparator comp)
Set the
Comparator by which I collate. |
void |
setIterator(int index,
java.util.Iterator iterator)
Set the Iterator at the given index
|
public CollatingIterator()
CollatingIterator
. Natural sort order
will be used, and child iterators will have to be manually added
using the addIterator(Iterator)
method.public CollatingIterator(java.util.Comparator comp)
CollatingIterator
that will used the
specified comparator for ordering. Child iterators will have to be
manually added using the addIterator(Iterator)
method.comp
- the comparator to use for ordering, or null
to use natural sort orderpublic CollatingIterator(java.util.Comparator comp, java.util.Collection iterators)
CollatingIterator
that will use the
specified comparator to provide ordered iteration over the collection
of iterators.comp
- the comparator to use to sort, or null to use natural
sort orderiterators
- the collection of iteratorsjava.lang.NullPointerException
- if the iterators collection is or contains nulljava.lang.ClassCastException
- if the iterators collection contains an
element that's not an Iterator
public CollatingIterator(java.util.Comparator comp, int initIterCapacity)
CollatingIterator
that will used the
specified comparator for ordering and have the specified initial
capacity. Child iterators will have to be
manually added using the addIterator(Iterator)
method.comp
- the comparator to use for ordering, or null
to use natural sort orderinitIterCapacity
- the initial capacity for the internal list
of child iteratorspublic CollatingIterator(java.util.Comparator comp, java.util.Iterator[] iterators)
CollatingIterator
that will use the
specified comparator to provide ordered iteration over the array
of iterators.comp
- the comparator to use to sort, or null to use natural
sort orderiterators
- the array of iteratorsjava.lang.NullPointerException
- if iterators array is or contains nullpublic CollatingIterator(java.util.Comparator comp, java.util.Iterator a, java.util.Iterator b)
CollatingIterator
that will use the
specified comparator to provide ordered iteration over the two
given iterators.comp
- the comparator to use to sort, or null to use natural
sort ordera
- the first child ordered iteratorb
- the second child ordered iteratorjava.lang.NullPointerException
- if either iterator is nullpublic void addIterator(java.util.Iterator iterator)
Iterator
to my collection to collate.java.lang.IllegalStateException
- if I've already started iteratingjava.lang.NullPointerException
- if the iterator is nullpublic java.util.Comparator getComparator()
Comparator
by which I collate.public java.util.List getIterators()
public boolean hasNext()
true
if any child iterator has remaining elements.hasNext
in interface java.util.Iterator
public java.lang.Object next() throws java.util.NoSuchElementException
next
in interface java.util.Iterator
java.util.NoSuchElementException
- if no child iterator has any more
elementspublic void remove()
remove
in interface java.util.Iterator
java.lang.IllegalStateException
- if there is no last returned element,
or if the last returned element has already been removedpublic void setComparator(java.util.Comparator comp)
Comparator
by which I collate.java.lang.IllegalStateException
- if I've already started iteratingpublic void setIterator(int index, java.util.Iterator iterator) throws java.lang.IndexOutOfBoundsException
index
- index of the Iterator to replaceiterator
- Iterator to place at the given indexjava.lang.IndexOutOfBoundsException
- if index < 0 or index > size()java.lang.IllegalStateException
- if I've already started iteratingjava.lang.NullPointerException
- if the iterator is nullCopyright © 2001-2004 Apache Software Foundation. Documenation generated February 26 2016.