Package org.apache.commons.collections
Interface MapIterator
-
- All Superinterfaces:
Iterator
- All Known Subinterfaces:
OrderedMapIterator
- All Known Implementing Classes:
AbstractDualBidiMap.BidiMapIterator
,AbstractHashedMap.HashMapIterator
,AbstractLinkedMap.LinkMapIterator
,AbstractMapIteratorDecorator
,AbstractOrderedMapIteratorDecorator
,DualTreeBidiMap.BidiOrderedMapIterator
,EmptyMapIterator
,EmptyOrderedMapIterator
,EntrySetMapIterator
,UnmodifiableMapIterator
,UnmodifiableOrderedMapIterator
public interface MapIterator extends Iterator
Defines an iterator that operates over aMap
.This iterator is a special version designed for maps. It can be more efficient to use this rather than an entry set iterator where the option is available, and it is certainly more convenient.
A map that provides this interface may not hold the data internally using Map Entry objects, thus this interface can avoid lots of object creation.
In use, this iterator iterates through the keys in the map. After each call to
next()
, thegetValue()
method provides direct access to the value. The value can also be set usingsetValue()
.MapIterator it = map.mapIterator(); while (it.hasNext()) { Object key = it.next(); Object value = it.getValue(); it.setValue(newValue); }
- Since:
- Commons Collections 3.0
- Version:
- $Revision: 646777 $ $Date: 2008-04-10 14:33:15 +0200 (Thu, 10 Apr 2008) $
- Author:
- Stephen Colebourne
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Object
getKey()
Gets the current key, which is the key returned by the last call tonext()
.Object
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.Object
next()
Gets the next key from theMap
.void
remove()
Removes the last returned key from the underlyingMap
(optional operation).Object
setValue(Object value)
Sets the value associated with the current key (optional operation).-
Methods inherited from interface java.util.Iterator
forEachRemaining
-
-
-
-
Method Detail
-
hasNext
boolean hasNext()
Checks to see if there are more entries still to be iterated.
-
next
Object next()
Gets the next key from theMap
.- Specified by:
next
in interfaceIterator
- Returns:
- the next key in the iteration
- Throws:
NoSuchElementException
- if the iteration is finished
-
getKey
Object getKey()
Gets the current key, which is the key returned by the last call tonext()
.- Returns:
- the current key
- Throws:
IllegalStateException
- ifnext()
has not yet been called
-
getValue
Object getValue()
Gets the current value, which is the value associated with the last key returned bynext()
.- Returns:
- the current value
- Throws:
IllegalStateException
- ifnext()
has not yet been called
-
remove
void remove()
Removes the last returned key from the underlyingMap
(optional operation).This method can be called once per call to
next()
.- Specified by:
remove
in interfaceIterator
- 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()
-
setValue
Object setValue(Object value)
Sets the value associated with the current key (optional operation).- 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()
-
-