public class CollatingIterator<E>
extends java.lang.Object
implements java.util.Iterator<E>
 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<? super E> comp)
Constructs a new  
CollatingIterator that will used the
 specified comparator for ordering. | 
CollatingIterator(java.util.Comparator<? super E> comp,
                 java.util.Collection<java.util.Iterator<? extends E>> iterators)
Constructs a new  
CollatingIterator that will use the
 specified comparator to provide ordered iteration over the collection of
 iterators. | 
CollatingIterator(java.util.Comparator<? super E> 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<? super E> comp,
                 java.util.Iterator<? extends E>[] iterators)
Constructs a new  
CollatingIterator that will use the
 specified comparator to provide ordered iteration over the array of
 iterators. | 
CollatingIterator(java.util.Comparator<? super E> comp,
                 java.util.Iterator<? extends E> a,
                 java.util.Iterator<? extends E> 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<? extends E> iterator)
Adds the given  
Iterator to the iterators being collated. | 
java.util.Comparator<? super E> | 
getComparator()
Gets the  
Comparator by which collatation occurs. | 
int | 
getIteratorIndex()
Returns the index of the iterator that returned the last element. 
 | 
java.util.List<java.util.Iterator<? extends E>> | 
getIterators()
Gets the list of Iterators (unmodifiable). 
 | 
boolean | 
hasNext()
Returns  
true if any child iterator has remaining elements. | 
E | 
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<? super E> comp)
Sets the  
Comparator by which collation occurs. | 
void | 
setIterator(int index,
           java.util.Iterator<? extends E> iterator)
Sets the iterator at the given index. 
 | 
public CollatingIterator()
CollatingIterator. A comparator must be
 set by calling setComparator(Comparator) before invoking
 hasNext(), or next() for the first time. Child
 iterators will have to be manually added using the
 addIterator(Iterator) method.public CollatingIterator(java.util.Comparator<? super E> 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; must not be null,
   unless you'll be invoking setComparator(Comparator) later on.public CollatingIterator(java.util.Comparator<? super E> 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; must not be null,
   unless you'll be invoking setComparator(Comparator) later on.initIterCapacity - the initial capacity for the internal list of
   child iteratorspublic CollatingIterator(java.util.Comparator<? super E> comp, java.util.Iterator<? extends E> a, java.util.Iterator<? extends E> b)
CollatingIterator that will use the
 specified comparator to provide ordered iteration over the two given
 iterators.comp - the comparator to use to sort; must not be null,
   unless you'll be invoking setComparator(Comparator) later on.a - the first child ordered iteratorb - the second child ordered iteratorjava.lang.NullPointerException - if either iterator is nullpublic CollatingIterator(java.util.Comparator<? super E> comp, java.util.Iterator<? extends E>[] iterators)
CollatingIterator that will use the
 specified comparator to provide ordered iteration over the array of
 iterators.comp - the comparator to use to sort; must not be null,
   unless you'll be invoking setComparator(Comparator) later on.iterators - the array of iteratorsjava.lang.NullPointerException - if iterators array is or contains nullpublic CollatingIterator(java.util.Comparator<? super E> comp, java.util.Collection<java.util.Iterator<? extends E>> iterators)
CollatingIterator that will use the
 specified comparator to provide ordered iteration over the collection of
 iterators.comp - the comparator to use to sort; must not be null,
   unless you'll be invoking setComparator(Comparator) later on.iterators - 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 Iteratorpublic void addIterator(java.util.Iterator<? extends E> 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<? extends E> 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<java.util.Iterator<? extends E>> getIterators()
public java.util.Comparator<? super E> getComparator()
Comparator by which collatation occurs.Comparatorpublic void setComparator(java.util.Comparator<? super E> comp)
Comparator by which collation occurs. If you
 would like to use the natural sort order (or, in other words,
 if the elements in the iterators are implementing the
 Comparable interface), then use the
 ComparableComparator.comp - the Comparator to setjava.lang.IllegalStateException - if iteration has startedpublic boolean hasNext()
true if any child iterator has remaining elements.hasNext in interface java.util.Iterator<E>public E next() throws java.util.NoSuchElementException
next in interface java.util.Iterator<E>java.util.NoSuchElementException - if no child iterator has any more elementspublic void remove()
remove in interface java.util.Iterator<E>java.lang.IllegalStateException - if there is no last returned element, or if
 the last returned element has already been removedpublic int getIteratorIndex()
java.lang.IllegalStateException - if there is no last returned elementCopyright © 2010 - 2023 Adobe. All Rights Reserved