Class SingletonListIterator<E>

    • Constructor Summary

      Constructors 
      Constructor Description
      SingletonListIterator​(E object)
      Constructs a new SingletonListIterator.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void add​(E obj)
      Add always throws UnsupportedOperationException.
      boolean hasNext()
      Is another object available from the iterator?
      boolean hasPrevious()
      Is a previous object available from the iterator?
      E next()
      Get the next object from the iterator.
      int nextIndex()
      Returns the index of the element that would be returned by a subsequent call to next.
      E previous()
      Get the previous object from the iterator.
      int previousIndex()
      Returns the index of the element that would be returned by a subsequent call to previous.
      void remove()
      Remove the object from this iterator.
      void reset()
      Reset the iterator back to the start.
      void set​(E obj)
      Set sets the value of the singleton.
      • 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

      • SingletonListIterator

        public SingletonListIterator​(E object)
        Constructs a new SingletonListIterator.
        Parameters:
        object - the single object to return from the iterator
    • Method Detail

      • hasNext

        public boolean hasNext()
        Is another object available from the iterator?

        This returns true if the single object hasn't been returned yet.

        Specified by:
        hasNext in interface java.util.Iterator<E>
        Specified by:
        hasNext in interface java.util.ListIterator<E>
        Returns:
        true if the single object hasn't been returned yet
      • hasPrevious

        public boolean hasPrevious()
        Is a previous object available from the iterator?

        This returns true if the single object has been returned.

        Specified by:
        hasPrevious in interface java.util.ListIterator<E>
        Specified by:
        hasPrevious in interface OrderedIterator<E>
        Returns:
        true if the single object has been returned
      • nextIndex

        public int nextIndex()
        Returns the index of the element that would be returned by a subsequent call to next.
        Specified by:
        nextIndex in interface java.util.ListIterator<E>
        Returns:
        0 or 1 depending on current state.
      • previousIndex

        public int previousIndex()
        Returns the index of the element that would be returned by a subsequent call to previous. A return value of -1 indicates that the iterator is currently at the start.
        Specified by:
        previousIndex in interface java.util.ListIterator<E>
        Returns:
        0 or -1 depending on current state.
      • next

        public E next()
        Get the next object from the iterator.

        This returns the single object if it hasn't been returned yet.

        Specified by:
        next in interface java.util.Iterator<E>
        Specified by:
        next in interface java.util.ListIterator<E>
        Returns:
        the single object
        Throws:
        java.util.NoSuchElementException - if the single object has already been returned
      • previous

        public E previous()
        Get the previous object from the iterator.

        This returns the single object if it has been returned.

        Specified by:
        previous in interface java.util.ListIterator<E>
        Specified by:
        previous in interface OrderedIterator<E>
        Returns:
        the single object
        Throws:
        java.util.NoSuchElementException - if the single object has not already been returned
      • remove

        public void remove()
        Remove the object from this iterator.
        Specified by:
        remove in interface java.util.Iterator<E>
        Specified by:
        remove in interface java.util.ListIterator<E>
        Throws:
        java.lang.IllegalStateException - if the next or previous method has not yet been called, or the remove method has already been called after the last call to next or previous.
      • add

        public void add​(E obj)
        Add always throws UnsupportedOperationException.
        Specified by:
        add in interface java.util.ListIterator<E>
        Parameters:
        obj - the object to add
        Throws:
        java.lang.UnsupportedOperationException - always
      • set

        public void set​(E obj)
        Set sets the value of the singleton.
        Specified by:
        set in interface java.util.ListIterator<E>
        Parameters:
        obj - the object to set
        Throws:
        java.lang.IllegalStateException - if next has not been called or the object has been removed
      • reset

        public void reset()
        Reset the iterator back to the start.
        Specified by:
        reset in interface ResettableIterator<E>