2015-05-25 3 views

ответ

4

Вы перемещаете внешнюю карту с помощью entrySet, затем для каждого значения внешней карты вы перемещаете внутреннюю карту с помощью entrySet.

for (Map.Entry<String,HashMap<String,String>> entry : mp.entrySet()) { 
    for (Map.Entry<String,String> innerEntry : entry.getValue().entrySet()) { 
     ... 
    } 
} 
+0

'entry.getValue()' -> 'entry.getValue() entrySet () '. – saka1029

+0

@ saka1029 благодарит! – Eran

0

Вы можете попробовать этот код:

Set hmset = hm.entrySet(); 
for (HashMap<String,String> innerMap : hm.values()) { 
    for (String st1 : innerMap.values()) { 
     System.out.println(st1); 
    } 
} 
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); 
       } 
      } 

} 

} 
Смежные вопросы