Class UnmodifiableMapIterator<K,V>

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


    public final class UnmodifiableMapIterator<K,V>
    extends Object
    implements MapIterator<K,V>, Unmodifiable
    Decorates a map iterator such that it cannot be modified.

    Attempts to modify it will result in an UnsupportedOperationException.

    Since:
    3.0
    • Method Summary

      Modifier and Type Method and Description
      K getKey()
      Gets the current key, which is the key returned by the last call to next().
      V getValue()
      Gets the current value, which is the value associated with the last key returned by next().
      boolean hasNext()
      Checks to see if there are more entries still to be iterated.
      K next()
      Gets the next key from the Map.
      void remove()
      Removes the last returned key from the underlying Map (optional operation).
      V setValue(V value)
      Sets the value associated with the current key (optional operation).
      static <K,V> MapIterator<K,V> unmodifiableMapIterator(MapIterator<? extends K,? extends V> iterator)
      Decorates the specified iterator such that it cannot be modified.
    • Method Detail

      • unmodifiableMapIterator

        public static <K,V> MapIterator<K,V> unmodifiableMapIterator(MapIterator<? extends K,? extends V> iterator)
        Decorates the specified iterator such that it cannot be modified.
        Type Parameters:
        K - the key type
        V - the value type
        Parameters:
        iterator - the iterator to decorate
        Returns:
        a new unmodifiable map iterator
        Throws:
        NullPointerException - if the iterator is null
      • hasNext

        public boolean hasNext()
        Description copied from interface: MapIterator
        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()
        Description copied from interface: MapIterator
        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
      • getKey

        public K getKey()
        Description copied from interface: MapIterator
        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()
        Description copied from interface: MapIterator
        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 value)
        Description copied from interface: MapIterator
        Sets the value associated with the current key (optional operation).
        Specified by:
        setValue in interface  MapIterator<K,V>
        Parameters:
        value - the new value
        Returns:
        the previous value
      • remove

        public void remove()
        Description copied from interface: MapIterator
        Removes the last returned key from the underlying Map (optional operation).

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