Class ArrayIterator<E>

    • Field Detail

      • elements

        private final E[] elements
      • descending

        private final boolean descending
      • idx

        private int idx
    • Constructor Detail

      • ArrayIterator

        public ArrayIterator​(E[] elements)
        Construct a new instance.
        Parameters:
        elements - the elements to iterate over
      • ArrayIterator

        public ArrayIterator​(E[] elements,
                             boolean descending)
        Construct a new instance.
        Parameters:
        elements - the elements to iterate over
        descending - true to iterate in descending order, false otherwise
      • ArrayIterator

        public ArrayIterator​(E[] elements,
                             int startIdx)
        Construct a new instance.
        Parameters:
        elements - the elements to iterate over
        startIdx - the starting index (must be within the bounds of elements)
      • ArrayIterator

        public ArrayIterator​(E[] elements,
                             boolean descending,
                             int startIdx)
        Construct a new instance.
        Parameters:
        elements - the elements to iterate over
        descending - true to iterate in descending order, false otherwise
        startIdx - the starting index (must be within the bounds of elements)
    • Method Detail

      • hasPrevious

        public boolean hasPrevious()
        Determine if there are more elements to iterate over in the reverse direction of this iterator.
        Specified by:
        hasPrevious in interface ListIterator<E>
        Returns:
        true if there are more elements, false otherwise
      • hasNext

        public boolean hasNext()
        Determine if there are more elements to iterate over in the direction of this iterator.
        Specified by:
        hasNext in interface Iterator<E>
        Specified by:
        hasNext in interface ListIterator<E>
        Returns:
        true if there are more elements, false otherwise
      • previous

        public E previous()
        Get the next element in the reverse direction of this iterator.
        Specified by:
        previous in interface ListIterator<E>
        Returns:
        the next element
      • next

        public E next()
        Get the next element in the direction of this iterator.
        Specified by:
        next in interface Iterator<E>
        Specified by:
        next in interface ListIterator<E>
        Returns:
        the next element
      • nextIndex

        public int nextIndex()
        Get the next index in the direction of this iterator.
        Specified by:
        nextIndex in interface ListIterator<E>
        Returns:
        the next index
      • previousIndex

        public int previousIndex()
        Get the next index in the reverse direction of this iterator.
        Specified by:
        previousIndex in interface ListIterator<E>
        Returns:
        the next index
      • set

        public void set​(E e)
        Unsupported.
        Specified by:
        set in interface ListIterator<E>
        Parameters:
        e - ignored
      • add

        public void add​(E e)
        Unsupported.
        Specified by:
        add in interface ListIterator<E>
        Parameters:
        e - ignored