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 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().

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