Class AbstractMapIteratorDecorator<K,​V>

  • All Implemented Interfaces:
    Iterator<K>, MapIterator<K,​V>

    public class AbstractMapIteratorDecorator<K,​V>
    extends Object
    implements MapIterator<K,​V>
    Provides basic behaviour for decorating a map iterator with extra functionality.

    All methods are forwarded to the decorated map iterator.

    Since:
    3.0
    • Constructor Detail

      • AbstractMapIteratorDecorator

        public AbstractMapIteratorDecorator​(MapIterator<K,​V> iterator)
        Constructor that decorates the specified iterator.
        Parameters:
        iterator - the iterator to decorate, must not be null
        Throws:
        NullPointerException - if the iterator is null
    • Method Detail

      • getMapIterator

        protected MapIterator<K,​V> getMapIterator()
        Gets the iterator being decorated.
        Returns:
        the decorated iterator
      • hasNext

        public boolean hasNext()
        Checks to see if there are more entries still to be iterated.
        Specified by:
        hasNext in interface Iterator<K>
        Specified by:
        hasNext in interface MapIterator<K,​V>
        Returns:
        true if the iterator has more elements
      • next

        public K next()
        Gets the next key from the Map.
        Specified by:
        next in interface Iterator<K>
        Specified by:
        next in interface MapIterator<K,​V>
        Returns:
        the next key in the iteration
      • remove

        public void remove()
        Removes the last returned key from the underlying Map (optional operation).

        This method can be called once per call to next().

        Specified by:
        remove in interface Iterator<K>
        Specified by:
        remove in interface MapIterator<K,​V>
      • getKey

        public K getKey()
        Gets the current key, which is the key returned by the last call to next().
        Specified by:
        getKey in interface MapIterator<K,​V>
        Returns:
        the current key
      • getValue

        public V getValue()
        Gets the current value, which is the value associated with the last key returned by next().
        Specified by:
        getValue in interface MapIterator<K,​V>
        Returns:
        the current value
      • setValue

        public V setValue​(V obj)
        Sets the value associated with the current key (optional operation).
        Specified by:
        setValue in interface MapIterator<K,​V>
        Parameters:
        obj - the new value
        Returns:
        the previous value