Map 嵌套存储Map
Posted lxy4
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Map 嵌套存储Map相关的知识,希望对你有一定的参考价值。
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map.Entry;
import java.util.Set;
public class demo10 {
public static void main(String[] args) {
//定义java班的集合
HashMap<String, String> javas = new HashMap<String,String>();
//定义hdoop班的集合
HashMap<String,String> hdoop = new HashMap<String,String>();
//向班级存储学生
javas.put("001", "朱东洋");
javas.put("002", "常俊凯");
hdoop.put("001", "张无忌");
hdoop.put("002", "谢逊");
//定义aaa容器 键是班级的名字 值是两个班级的容器
HashMap<String, HashMap<String, String>> aaa = new HashMap<String, HashMap<String, String>>();
aaa.put("javas班",javas);
aaa.put("Hdoop班", hdoop);
EntrySet1(aaa);
}
private static void EntrySet1(HashMap<String, HashMap<String, String>> aaa) {
//调用集合aaa的方法 entrySet 将aaa集合的键封装到Set集合中
Set<Entry<String, HashMap<String,String>>> classa = aaa.entrySet();
//迭代Set集合
//Iterator<Entry<String, HashMap<String,String>>> it= classa.iterator();
// while (it.hasNext()) {
// Entry<String, HashMap<String,String>> b = it.next();
// String n = b.getKey();
// HashMap< String, String> v= b.getValue();
// System.out.println(n);
// System.out.println(v);
// Set<Entry<String, String>> x = v.entrySet();
// Iterator<Entry<String, String>> its = x.iterator();
// while(its.hasNext()){
// Entry<String, String> c = its.next();
// String o = c.getKey();
// String p = c.getValue();
// System.out.println(o+" "+p);
// }
// }
//外循环控制输出班级名字和班级容器
for(Entry<String, HashMap<String,String>> i: classa){
String n = i.getKey();
HashMap< String, String> v= i.getValue();
System.out.println(n);
System.out.println(v);
Set<Entry<String, String>> x = v.entrySet();
//内循环控制输出容器中的内容
for(Entry<String, String> r:x){
String o = r.getKey();
String p = r.getValue();
System.out.println(o+" "+p);
}
}
}
}
以上是关于Map 嵌套存储Map的主要内容,如果未能解决你的问题,请参考以下文章
Mybatis foreach嵌套遍历Map的key和value
PAT甲级1039 Course List for Student (25 分)(vector嵌套于map,段错误原因未知)