public class CollatingIterator
extends java.lang.Object
implements java.util.Iterator
Given two ordered Iterator
instances A
and B
,
the next()
method on this iterator 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)
Adds the given
Iterator to the iterators being collated. |
java.util.Comparator |
getComparator()
Gets the
Comparator by which collatation occurs. |
java.util.List |
getIterators()
Gets 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)
Sets the
Comparator by which collation occurs. |
void |
setIterator(int index,
java.util.Iterator iterator)
Sets 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 to sort, or null to use natural sort orderpublic 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 to sort, 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 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 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.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 void addIterator(java.util.Iterator iterator)
Iterator
to the iterators being collated.iterator
- the iterator to add to the collation, must not be nulljava.lang.IllegalStateException
- if iteration has startedjava.lang.NullPointerException
- if the iterator is nullpublic void setIterator(int index, java.util.Iterator iterator)
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 iteration has startedjava.lang.NullPointerException
- if the iterator is nullpublic java.util.List getIterators()
public java.util.Comparator getComparator()
Comparator
by which collatation occurs.public void setComparator(java.util.Comparator comp)
Comparator
by which collation occurs.java.lang.IllegalStateException
- if iteration has startedpublic 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 removed"Copyright © 2010 - 2020 Adobe Systems Incorporated. All Rights Reserved"