Maps do not provide an iterator() method as do Lists and Sets.
A Set of either keys (keySet()
) or key-value Map.Entry elements (entrySet()
)
can be obtained from the Map, and one can iterate over that.
The order of the elements obtained from a Map depends on the type of Map they came from.
This example utility method prints the key-value pairs in a map. This utility method is designed to work for all Maps, so it isn't able to take advantage of generics.
//============================================ utility method dumpMap
public static void dumpMap(Map mp) {
Iterator it = mp.entrySet().iterator();
while (it.hasNext()) {
Map.Entry pairs = (Map.Entry)it.next();
System.out.println(pairs.getKey() + " = " + pairs.getValue());
}
}
See Example - WordFrequency for an example of a different way to go over a HashMap by converting it to an ArrayList.