org.apache.commons.collections.iterators
Class EntrySetMapIterator<K,V>

java.lang.Object
  extended by org.apache.commons.collections.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 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:
Commons Collections 3.0
Version:
$Revision: 1.1.1.1 $ $Date: 2005/05/23 04:34:51 $
Author:
Matt Hall, John Watkinson, Stephen Colebourne

Constructor Summary
EntrySetMapIterator(Map<K,V> map)
          Constructor.
 
Method Summary
 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.
 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
 

Constructor Detail

EntrySetMapIterator

public EntrySetMapIterator(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 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 Iterator<K>
Specified by:
next in interface MapIterator<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 underlying Map.

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>
Throws:
UnsupportedOperationException - if remove is not supported by the map
IllegalStateException - if next() has not yet been called
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:
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:
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:
UnsupportedOperationException - if setValue is not supported by the map
IllegalStateException - if next() has not yet been called
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 String toString()
Gets the iterator as a String.

Overrides:
toString in class Object
Returns:
a string version of the iterator


Copyright © 2005-2005 Apache Software Foundation, Matt Hall, John Watkinson. All Rights Reserved.