Class EntrySetMapIterator<K,V>
- java.lang.Object
-
- org.apache.commons.collections4.iterators.EntrySetMapIterator<K,V>
-
- All Implemented Interfaces:
Iterator<K>
,MapIterator<K,V>
,ResettableIterator<K>
public class EntrySetMapIterator<K,V> extends Object implements MapIterator<K,V>, ResettableIterator<K>
Implements aMapIterator
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(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 tonext()
.V
getValue()
Gets the current value, which is the value associated with the last key returned bynext()
.boolean
hasNext()
Checks to see if there are more entries still to be iterated.K
next()
Gets the next key from theMap
.void
remove()
Removes the last returned key from the underlyingMap
.void
reset()
Resets the state of the iterator.V
setValue(V value)
Sets the value associated with the current key.String
toString()
Gets the iterator as a String.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.util.Iterator
forEachRemaining
-
-
-
-
Method Detail
-
hasNext
public boolean hasNext()
Checks to see if there are more entries still to be iterated.
-
next
public K next()
Gets the next key from theMap
.- Specified by:
next
in interfaceIterator<K>
- Specified by:
next
in interfaceMapIterator<K,V>
- Returns:
- the next key in the iteration
- Throws:
NoSuchElementException
- if the iteration is finished
-
remove
public void remove()
Removes the last returned key from the underlyingMap
.This method can be called once per call to
next()
.- Specified by:
remove
in interfaceIterator<K>
- Specified by:
remove
in interfaceMapIterator<K,V>
- Throws:
UnsupportedOperationException
- if remove is not supported by the mapIllegalStateException
- ifnext()
has not yet been calledIllegalStateException
- ifremove()
has already been called since the last call tonext()
-
getKey
public K getKey()
Gets the current key, which is the key returned by the last call tonext()
.- Specified by:
getKey
in interfaceMapIterator<K,V>
- Returns:
- the current key
- Throws:
IllegalStateException
- ifnext()
has not yet been called
-
getValue
public V getValue()
Gets the current value, which is the value associated with the last key returned bynext()
.- Specified by:
getValue
in interfaceMapIterator<K,V>
- Returns:
- the current value
- Throws:
IllegalStateException
- ifnext()
has not yet been called
-
setValue
public V setValue(V value)
Sets the value associated with the current key.- Specified by:
setValue
in interfaceMapIterator<K,V>
- Parameters:
value
- the new value- Returns:
- the previous value
- Throws:
UnsupportedOperationException
- if setValue is not supported by the mapIllegalStateException
- ifnext()
has not yet been calledIllegalStateException
- ifremove()
has been called since the last call tonext()
-
reset
public void reset()
Resets the state of the iterator.- Specified by:
reset
in interfaceResettableIterator<K>
-
-