Map 嵌套存储Map
import java.util.HashMap;
import java.util.Iterator;
import java.util.Set;
import java.util.Map.Entry;
public class MapDome {
// Map 嵌套存储Map
// aaa
// java班
// 001 郭嘉
// 002 神郭嘉
// javahoodp班
// 001 黄月英
// 002 神黄月英
// java班 :存学号和名字
// javahoodp班:存学号和名字
// 学校:存的是班级
// java班<学号,姓名>
// aaaMap<班级名字,java班>
public static void main(String[] args) {
//定义Java班的集合
HashMap<String, String> java=new HashMap<String, String>();
//定义java班级的学生
java.put("001","郭嘉");
java.put("002", "神郭嘉");
//定义hdoop班的集合
HashMap<String, String> hdoop=new HashMap<String,String>();
//向hdoop班保存学生
hdoop.put("001","黄月英");
hdoop.put("002", "神黄月英");
//定义学校的集合
HashMap<String, HashMap<String, String>> a=new HashMap<String,HashMap<String, String>>();
//定义学校是容器 键是班级的名字 值是两个
a.put("java班", java);
a.put("hdoop班", hdoop);
//调用集合aaa 的方法 entrySet 将学校集合的键封装到Set集合中
Set<Entry<String, HashMap<String, String>>> Set=a.entrySet();
//增强for循环遍历集合
//获取的是学校的集合
for(Entry<String, HashMap<String, String>> s:Set){
//获取getkey 和getvalue的值
String key = s.getKey();
HashMap<String, String> value = s.getValue();
System.out.println(key);
现在获取的是两个班级的集合
Set<Entry<String, String>> enSet = value.entrySet();
//使用增强for循环,循环Set集合
for(Entry<String, String>l:enSet){
String key2 = l.getKey();
String value2 = l.getValue();
System.out.println(key2+" "+value2);
}
}
System.out.println("+++++++++++++++++++++++++++++++++++");
//使用迭代 set集合
Iterator<Entry<String, HashMap<String, String>>> it = Set.iterator();
while (it.hasNext()) {
Entry<String, HashMap<String, String>> next = it.next();
String key = next.getKey();
HashMap<String, String> value = next.getValue();
Set<Entry<String, String>> enSet = value.entrySet();
Iterator<Entry<String, String>> ite = enSet.iterator();
while (ite.hasNext()) {
Entry<String, String> next2 = ite.next();
String key2 = next2.getKey();
String value2 = next2.getValue();
System.out.println(key2+" "+value2);
}
}
}
}
Map 嵌套存储Map的更多相关文章
- 【PAT甲级】1039 Course List for Student (25 分)(vector嵌套于map,段错误原因未知)
题意: 输入两个正整数N和K(N<=40000,K<=2500),分别为学生和课程的数量.接下来输入K门课的信息,先输入每门课的ID再输入有多少学生选了这门课,接下来输入学生们的ID.最后 ...
- android开发之-数据存储Map、HashMap、Hashtable、concurenthashmap区别
选择一个map进行软件基础数据初始化操作,要求第一次初始化后,不修改数据,可能会出现静态类被回收,然后在进行初始化操作? 1.Map :接口 /** * A {@code Map} is a data ...
- bboss oreach循环嵌套遍历map
foreach循环嵌套遍历mapforeach嵌套dsl脚本定义 <property name="dynamicInnerDsl"> <![CDATA[{ ## ...
- Java处理JSON的工具类(List、Map和JSON之间的转换)——依赖jsonlib支持Map嵌套
原文链接:http://www.itjhwd.com/java_json/ 代码 package com.itjh.mmp.util; import java.io.BufferedReader; i ...
- mybatis嵌套map或者map嵌套的parameterType
Spring的重要注解 https://www.cnblogs.com/rolandlee/p/11014923.html 一:首先是map嵌套: 例1: 例2: 总结: paramterType无论 ...
- 用set、map等存储自定义结构体时容器内部判别各元素是否相同的注意事项
STL作为通用模板极大地方便了C++使用者的编程,因为它可以存储任意数据类型的元素 如果我们想用set与map来存储自定义结构体时,如下 struct pp { double xx; double y ...
- java中遍历MAP,嵌套map的几种方法
java中遍历MAP的几种方法 Map<String,String> map=new HashMap<String,String>(); map.put("us ...
- Map java中的map 如何修改Map中的对应元素
Map java中的map 如何修改Map中的对应元素 Map以按键/数值对的形式存储数据,和数组非常相似,在数组中存在的索引,它们本身也是对象. Map的接口 Map ...
- Java基础知识强化之集合框架笔记51:Map集合之Map集合的功能概述与测试
1. Map集合的功能概述 (1)添加功能 V put(K key,V value):添加元素.这个其实还有另一个功能?先不告诉你,等会讲 如果键是第一次存储,就直接存储元素,返回null 如果键不是 ...
随机推荐
- 毕加索发布轻量化转化引擎及BIMSOP协作云平台
一直以来,杂务缠身,博客都好久没有更新了,以后还是要继续坚持总结一下.希望能有时间坚持下去 :) 月初在国家会议中的智能展会上,我分享了毕加索公司近来的工作,即自行研发的轻量化转化云平台,以及以此为基 ...
- svn文件夹解锁批处理
清除svn文件的bat脚本整理 从svn上检出的项目,不在myeclipse工具中脱离svn的管辖,怎么办呢,下面有我的方法,也是借鉴别人的,用了特别好使,故推荐给大家. 首先创建一个xxx.bat文 ...
- 关于关键字 volatile
关于 volatile 的使用,也是 C 语言面试的月经问题.标准答案来了: volatile is a qualifier that is applied to a variable when it ...
- oralce 11.2.0.4手动创建EM
安装完oracle,启动dbconsole,失败 [oracle@elearning admin]$ emctl start dbconsole OC4J Configuration issue. / ...
- Springboot 生成验证码
技术:springboot+kaptcha+session 概述 场景介绍 验证码,用于web网站.用户点击验证码图片后,生成验证码.提交后,用户输入验证码和Session验证码,进行校验. 详细 ...
- iOS实现pdf文件预览,上下翻页、缩放,读取pdf目录
最近有个朋友想做一个pdf预览,要求能够上下滑动翻页.带缩放.目录跳转功能. 因为之前我只做过简单的预览,那时直接用uiwebview实现的,这次找了下资料,发现一个比较好的库. 其原理实现: 自定义 ...
- 关于dede后台登陆后一片空白以及去除版权
今天家里的电脑上新装DEDE5.7后台登陆后竟然一片空白,装PHPCMS却没有问题.百度了好久,也没找到一个像样的答案,晕死! 看了源码后发现在源码里的类库中很多都是PHP4的语法,var这个函数在P ...
- 关于APP,原生和H5开发技术的争论 APP开发技术选型判断依据
关于APP,原生和H5开发技术的争论 App的开发技术,目前流行的两种方式,原生和Html5.原生分了安卓平台和ios平台(还有小众的黑莓.死去的塞班就不说了),H5就是Html5. 目前争论不休的问 ...
- (原创)Rocketmq分布式消息队列的部署与监控
-------------------------------------------------------------------------------------------- 一.Rocke ...
- 详解Docker的网络模式
我们在使用docker run创建Docker容器时,可以用--net选项指定容器的网络模式,Docker有以下4种网络模式: host模式:使用--net=host指定container模式:使用- ...