Class EntrySetMapIterator<K,​V>

  • Type Parameters:
    K - the type of keys
    V - the type of mapped values
    All Implemented Interfaces:
    java.util.Iterator<K>, MapIterator<K,​V>, ResettableIterator<K>

    public class EntrySetMapIterator<K,​V>
    extends java.lang.Object
    implements MapIterator<K,​V>, ResettableIterator<K>
    Implements a MapIterator using a Map entrySet. Reverse iteration is not supported.
     MapIterator it = map.mapIterator();
     while (it.hasNext()) {
       Object key = it.next();
       Object value = it.getValue();
       it.setValue(newValue);
     }
     
    Since:
    3.0
    • Constructor Summary

      Constructors 
      Constructor Description
      EntrySetMapIterator​(java.util.Map<K,​V> map)
      Constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method 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.
      void reset()
      Resets the state of the iterator.
      V setValue​(V value)
      Sets the value associated with the current key.
      java.lang.String toString()
      Gets the iterator as a String.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface java.util.Iterator

        forEachRemaining
    • Constructor Detail

      • EntrySetMapIterator

        public EntrySetMapIterator​(java.util.Map<K,​V> map)
        Constructor.
        Parameters:
        map - the map to iterate over
    • Method Detail

      • hasNext

        public boolean hasNext()
        Checks to see if there are more entries still to be iterated.
        Specified by:
        hasNext in interface java.util.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 java.util.Iterator<K>
        Specified by:
        next in interface MapIterator<K,​V>
        Returns:
        the next key in the iteration
        Throws:
        java.util.NoSuchElementException - if the iteration is finished
      • remove

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

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

        Specified by:
        remove in interface java.util.Iterator<K>
        Specified by:
        remove in interface MapIterator<K,​V>
        Throws:
        java.lang.UnsupportedOperationException - if remove is not supported by the map
        java.lang.IllegalStateException - if next() has not yet been called
        java.lang.IllegalStateException - if remove() has already been called since the last call to next()
      • 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
        Throws:
        java.lang.IllegalStateException - if next() has not yet been called
      • 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
        Throws:
        java.lang.IllegalStateException - if next() has not yet been called
      • setValue

        public V setValue​(V value)
        Sets the value associated with the current key.
        Specified by:
        setValue in interface MapIterator<K,​V>
        Parameters:
        value - the new value
        Returns:
        the previous value
        Throws:
        java.lang.UnsupportedOperationException - if setValue is not supported by the map
        java.lang.IllegalStateException - if next() has not yet been called
        java.lang.IllegalStateException - if remove() has been called since the last call to next()
      • reset

        public void reset()
        Resets the state of the iterator.
        Specified by:
        reset in interface ResettableIterator<K>
      • toString

        public java.lang.String toString()
        Gets the iterator as a String.
        Overrides:
        toString in class java.lang.Object
        Returns:
        a string version of the iterator