我是Java的新手。
我有这样的地图。
HashMap<String,HashMap<String,String>>mp;
如何遍历这个?
mp里面有另一个。
我知道使用entrySet遍历地图的正常方式;
答案 0 :(得分:4)
使用entrySet遍历外部地图,然后使用entrySet遍历内部地图的每个值。
for (Map.Entry<String,HashMap<String,String>> entry : mp.entrySet()) {
for (Map.Entry<String,String> innerEntry : entry.getValue().entrySet()) {
...
}
}
答案 1 :(得分:2)
您可以尝试以下代码:
package com.test;
import java.util.HashMap;
import java.util.Set;
public class TestMain {
public static void main(String[] args) {
HashMap<String,HashMap<String,String>>mp= new HashMap<String,HashMap<String,String>>();
HashMap<String, String> innerMap1= new HashMap<String, String>();
innerMap1.put("1", "firstValueOf_InnerMap1");
innerMap1.put("2", "SecondValueOf_InnerMap1");
HashMap<String, String> innerMap2= new HashMap<String, String>();
innerMap2.put("1", "firstValueOf_InnerMap2");
innerMap2.put("2", "SecondValueOf_InnerMap2");
mp.put("one", innerMap1);
mp.put("two", innerMap2);
for (HashMap<String,String> innerHashMap : mp.values()) {
for (String value : innerHashMap.values()) {
System.out.println(value);
}
}
}
}
答案 2 :(得分:0)
您可以尝试以下代码:
com.myname.mygame