import java.util.*;

public class IterateHashMap {
	public static void main(String[] args) {
		HashMap<String, Integer> map = new HashMap<>();
		// populate the map

		for (String key : map.keySet()) {
			Integer value = map.get(key);
		}

		// Using entrySet()
		for (Map.Entry<String, Integer> entry : map.entrySet()) {
			String key = entry.getKey();
			Integer value = entry.getValue();
		}

		// Using forEach() in Java 8
		map.forEach((key, value) -> {
			// Process key and value
		});

		// using KeySet Iterator
		Set<String> keySet = map.keySet();
		Iterator<String> keySetIterator = keySet.iterator();
		String tempKey;
		while (keySetIterator.hasNext()) {
			tempKey = keySetIterator.next();
			Integer value = map.get(tempKey);
		}

		Collection<Integer> values = map.values();
		for (Integer value : values) {
			// proces values
		}
	}
}