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 如果键不是 ...
随机推荐
- EasyMock 简单使用
参考案例:(本位使用markdown编写)https://www.ibm.com/developerworks/cn/opensource/os-cn-easymock/https://www.yii ...
- Android必学之数据适配器BaseAdapter
什么是数据适配器? 下图展示了数据源.适配器.ListView等数据展示控件之间的关系.我们知道,数据源是各种各样的,而ListView所展示数据的格式则是有一定的要求的.数据适配器正是建立了数据源与 ...
- 什么?又是404!趣图助你理解HTTP状态码~
HTTP状态码(一): 注释: 301—永久移动.被请求的资源已被永久移动位置: 302—请求的资源现在临时从不同的 URI 响应请求: 305—使用代理.被请求的资源必须通过指定的代理才能被访问 ...
- jvm理论-字节码指令
Java虚拟机的指令由一个字节长度的.代表着某种特定操作含义的数字(称为操作码,Opcode)以及跟随其后的零至多个代表此操作所需参数(称为操作数,Operands)而构成. 基本数据类型 1.除了l ...
- Win10系统的SurfacePro4如何重装系统-1 SurfacePro专用的PE
下载SurfacePro专用的PE(普通的PE可能不支持触摸屏操作,甚至没法启动Surface,所以务必要重新制作PE),下面提供百度云下载地址,下载之后,双击EXE,会进行检测 链接:https:/ ...
- h264_rtp打包解包类及实现demo
打包头文件: class CH2642Rtp { public: CH2642Rtp(uint32_t ssrc, uint8_t payloadType = 96, uint8_t fps = 25 ...
- emacs 集成astyle
https://stackoverflow.com/questions/8115460/emacs-save-excursion-not-restoring-point https://github. ...
- 使用xshell+xmanager+pycharm搭建pytorch远程调试开发环境
1. 相关软件版本 xshell: xmanager: pycharm: pycharm破解服务器:https://jetlicense.nss.im/ 2. 将相应的软件安装(pojie好) a&g ...
- LaTeX网址
https://www.latex-project.org/ latex官网 http://www.latexstudio.net/ 国内知名latex学习中心 https://www.ove ...
- android手机测试中如何查看内存泄露
(一) 生成.hprof文件生成.hprof 文件的方法有很多,而且Android 的不同版本中生成.hprof 的方式也稍有差别,我使用的版本的是2.1,各个版本中生成.prof 文件的方法请参考: ...