我是Java新手。如何遍歷java中的地圖內部地圖
我有這樣的地圖。
HashMap<String,HashMap<String,String>>mp;
如何遍歷這個?
mp裏面有另一個mp。
我知道使用entrySet遍歷map的正常方法;
我是Java新手。如何遍歷java中的地圖內部地圖
我有這樣的地圖。
HashMap<String,HashMap<String,String>>mp;
如何遍歷這個?
mp裏面有另一個mp。
我知道使用entrySet遍歷map的正常方法;
您使用entrySet遍歷外部地圖,然後使用entrySet遍歷內部地圖的每個外部地圖值。
for (Map.Entry<String,HashMap<String,String>> entry : mp.entrySet()) {
for (Map.Entry<String,String> innerEntry : entry.getValue().entrySet()) {
...
}
}
你可以試試這個代碼:
Set hmset = hm.entrySet();
for (HashMap<String,String> innerMap : hm.values()) {
for (String st1 : innerMap.values()) {
System.out.println(st1);
}
}
你可以試試這個代碼:
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);
}
}
}
}
'entry.getValue()' - >'entry.getValue()的entrySet( )'。 – saka1029
@ saka1029謝謝! – Eran