How to Iterate Over a Map of Maps in Java - Step by Step Examples
How to Iterate Over a Map of Maps in Java ?
Answer
To iterate over a map of maps in Java, you can use nested loops. The outer loop iterates over the outer map, and the inner loop iterates over the inner map.
✐ Examples
1 Iterating Over a Map of Maps with Integer Keys and Values
We can iterate over a map of maps in Java where both the outer and inner maps use integers for keys and values. This example demonstrates using nested loops to print each key-value pair.
For example,
- We start by importing the necessary classes:
java.util.HashMap
andjava.util.Map
. - We declare and initialize a map of maps named
outerMap
. - We use a nested loop to iterate over the outer and inner maps and print each key-value pair.
Java Program
import java.util.HashMap;
import java.util.Map;
public class IterateMapOfMaps {
public static void main(String[] args) {
// Declare and initialize a map of maps
Map<Integer, Map<Integer, Integer>> outerMap = new HashMap<>();
Map<Integer, Integer> innerMap1 = new HashMap<>();
innerMap1.put(1, 10);
innerMap1.put(2, 20);
innerMap1.put(3, 30);
outerMap.put(1, innerMap1);
Map<Integer, Integer> innerMap2 = new HashMap<>();
innerMap2.put(4, 40);
innerMap2.put(5, 50);
innerMap2.put(6, 60);
outerMap.put(2, innerMap2);
// Iterate over the map of maps
System.out.println("Iterating over map of maps with integer keys and values:");
for (Map.Entry<Integer, Map<Integer, Integer>> outerEntry : outerMap.entrySet()) {
System.out.println("Outer key: " + outerEntry.getKey());
for (Map.Entry<Integer, Integer> innerEntry : outerEntry.getValue().entrySet()) {
System.out.println(" Inner key: " + innerEntry.getKey() + ", value: " + innerEntry.getValue());
}
}
}
}
Output
Iterating over map of maps with integer keys and values: Outer key: 1 Inner key: 1, value: 10 Inner key: 2, value: 20 Inner key: 3, value: 30 Outer key: 2 Inner key: 4, value: 40 Inner key: 5, value: 50 Inner key: 6, value: 60
2 Iterating Over a Map of Maps with Mixed Key and Value Types
We can iterate over a map of maps in Java where the outer map uses strings for keys and the inner maps use integers for keys and strings for values. This example demonstrates using nested loops to print each key-value pair.
For example,
- We start by importing the necessary classes:
java.util.HashMap
andjava.util.Map
. - We declare and initialize a map of maps named
outerMap
with mixed key and value types. - We use a nested loop to iterate over the outer and inner maps and print each key-value pair.
Java Program
import java.util.HashMap;
import java.util.Map;
public class IterateMapOfMaps {
public static void main(String[] args) {
// Declare and initialize a map of maps
Map<String, Map<Integer, String>> outerMap = new HashMap<>();
Map<Integer, String> innerMap1 = new HashMap<>();
innerMap1.put(1, "one");
innerMap1.put(2, "two");
innerMap1.put(3, "three");
outerMap.put("first", innerMap1);
Map<Integer, String> innerMap2 = new HashMap<>();
innerMap2.put(4, "four");
innerMap2.put(5, "five");
innerMap2.put(6, "six");
outerMap.put("second", innerMap2);
// Iterate over the map of maps
System.out.println("Iterating over map of maps with mixed key and value types:");
for (Map.Entry<String, Map<Integer, String>> outerEntry : outerMap.entrySet()) {
System.out.println("Outer key: " + outerEntry.getKey());
for (Map.Entry<Integer, String> innerEntry : outerEntry.getValue().entrySet()) {
System.out.println(" Inner key: " + innerEntry.getKey() + ", value: " + innerEntry.getValue());
}
}
}
}
Output
Iterating over map of maps with mixed key and value types: Outer key: first Inner key: 1, value: one Inner key: 2, value: two Inner key: 3, value: three Outer key: second Inner key: 4, value: four Inner key: 5, value: five Inner key: 6, value: six
3 Iterating Over a Map of Maps with String Keys and Double Values
We can iterate over a map of maps in Java where both the outer and inner maps use strings for keys and doubles for values. This example demonstrates using nested loops to print each key-value pair.
For example,
- We start by importing the necessary classes:
java.util.HashMap
andjava.util.Map
. - We declare and initialize a map of maps named
outerMap
with strings for keys and doubles for values. - We use a nested loop to iterate over the outer and inner maps and print each key-value pair.
Java Program
import java.util.HashMap;
import java.util.Map;
public class IterateMapOfMaps {
public static void main(String[] args) {
// Declare and initialize a map of maps
Map<String, Map<String, Double>> outerMap = new HashMap<>();
Map<String, Double> innerMap1 = new HashMap<>();
innerMap1.put("A", 1.1);
innerMap1.put("B", 2.2);
innerMap1.put("C", 3.3);
outerMap.put("group1", innerMap1);
Map<String, Double> innerMap2 = new HashMap<>();
innerMap2.put("D", 4.4);
innerMap2.put("E", 5.5);
innerMap2.put("F", 6.6);
outerMap.put("group2", innerMap2);
// Iterate over the map of maps
System.out.println("Iterating over map of maps with string keys and double values:");
for (Map.Entry<String, Map<String, Double>> outerEntry : outerMap.entrySet()) {
System.out.println("Outer key: " + outerEntry.getKey());
for (Map.Entry<String, Double> innerEntry : outerEntry.getValue().entrySet()) {
System.out.println(" Inner key: " + innerEntry.getKey() + ", value: " + innerEntry.getValue());
}
}
}
}
Output
Iterating over map of maps with string keys and double values: Outer key: group1 Inner key: A, value: 1.1 Inner key: B, value: 2.2 Inner key: C, value: 3.3 Outer key: group2 Inner key: D, value: 4.4 Inner key: E, value: 5.5 Inner key: F, value: 6.6
Summary
In this tutorial, we learned How to Iterate Over a Map of Maps in Java language with well detailed examples.
More Java Maps Tutorials
- How to create an Empty Map in Java ?
- How to create a Map with Initial Key-Value Pairs in Java ?
- How to Print a Map in Java ?
- How to Add a Key-Value Pair to a Map in Java ?
- How to Set a Default Value for a Key in a Map in Java ?
- How to Update the Value for a Key in a Map in Java ?
- How to Check if a Map is Empty in Java ?
- How to Check if a Key Exists in a Map in Java ?
- How to Check if a Value Exists in a Map in Java ?
- How to Get the Value Associated with a Key in a Map in Java ?
- How to Remove a Key-Value Pair from a Map in Java ?
- How to Remove Key-Value Pairs from a Map Based on Values in Java ?
- How to Clear All Key-Value Pairs from a Map in Java ?
- How to Iterate Over Keys in a Map in Java ?
- How to Iterate Over Values in a Map in Java ?
- How to Iterate Over Entries (Key-Value Pairs) in a Map in Java ?
- How to Get the Size (Number of Key-Value Pairs) of a Map in Java ?
- How to Convert a Map to an Array of Keys in Java ?
- How to Convert a Map to an Array of Values in Java ?
- How to Merge Two Maps in Java ?
- How to Copy a Map in Java ?
- How to Check if Two Maps are Equal in Java ?
- How to Sort a Map by Keys in Java ?
- How to Sort a Map by Values in Java ?
- How to Filter a Map Based on Keys in Java ?
- How to Filter a Map Based on Values in Java ?
- How to Reduce Values in a Map to a Single Value in Java ?
- How to Convert an Array of Key-Value Pairs to a Map in Java ?
- How to Convert a Map to a JSON String in Java ?
- How to Convert a JSON String to a Map in Java ?
- How to Swap Keys and Values in a Map in Java ?
- How to Create a Map of Maps in Java ?
- How to Iterate Over a Map of Maps in Java ?