Class BoundedIterator<T>

  • Type Parameters:
    T - element type
    All Implemented Interfaces:
    java.util.Iterator<T>

    public class BoundedIterator<T>
    extends java.lang.Object
    implements java.util.Iterator<T>
    Implements a bounded iterator which only returns a maximum number of element from an underlying iterator starting at a given offset.
    • Constructor Summary

      Constructors 
      Constructor Description
      BoundedIterator​(long offset, long max, java.util.Iterator<T> iterator)
      Create a new bounded iterator with a given offset and maximum
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static <T> java.util.Iterator<T> create​(long offset, long max, java.util.Iterator<T> iterator)
      Factory for creating a bounded iterator.
      boolean hasNext()  
      T next()  
      void remove()  
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface java.util.Iterator

        forEachRemaining
    • Constructor Detail

      • BoundedIterator

        public BoundedIterator​(long offset,
                               long max,
                               java.util.Iterator<T> iterator)
        Create a new bounded iterator with a given offset and maximum
        Parameters:
        offset - offset to start iteration at. Must be non negative
        max - maximum elements this iterator should return. Set to -1 for all
        iterator - the underlying iterator
        Throws:
        java.lang.IllegalArgumentException - if offset is negative
    • Method Detail

      • create

        public static <T> java.util.Iterator<T> create​(long offset,
                                                       long max,
                                                       java.util.Iterator<T> iterator)
        Factory for creating a bounded iterator.
        Type Parameters:
        T - element type
        Parameters:
        offset - offset to start iteration at. Must be non negative
        max - maximum elements this iterator should return. Set to -1 for all
        iterator - the underlying iterator
        Returns:
        an iterator which only returns the elements in the given bounds
        See Also:
        BoundedIterator(long, long, java.util.Iterator)
      • hasNext

        public boolean hasNext()
        Specified by:
        hasNext in interface java.util.Iterator<T>
      • next

        public T next()
        Specified by:
        next in interface java.util.Iterator<T>
      • remove

        public void remove()
        Specified by:
        remove in interface java.util.Iterator<T>