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 如果键不是 ...
随机推荐
- golang dlv 远程调试
因为不知道delvel 是如何设置源码的,本地编译的上传到服务器上,服务器要调试看不到源码,很是忧伤,所以干脆使用远程调试吧: 在服务器上 ps x|grep game 查找到gameserver的进 ...
- 遇到一个git branch很奇怪的问题
最近,同事做了一个自动化的打包平台,但我发现里面的分支竟然有重复的,还有一些已经删除的branch. 比如,我已经删除了一个 test分支,在工程 game 目录下(已输入 git pull),输入: ...
- JS 之 阻止事件冒泡,阻止默认事件,event.stopPropagation()和event.preventDefault(),return false的区别
在前端开发中,有时我们需要阻止冒泡和阻止默认事件的发生. 一.event.stopPropagation() 阻止事件的冒泡,不让事件向documen上蔓延,但是默认事件任然会执行,当调用这个方法的时 ...
- 学习ReentrantLock
1. 使用ReentrantLock import java.util.concurrent.locks.ReentrantLock; public class TestReentrantLock { ...
- html5使用canvas实现毫秒级画心电图
- freenode configuration sasl authentication in weechat
转自:https://www.weechat.org/files/doc/stable/weechat_user.en.html#irc_sasl_authentication SASL authen ...
- R语言中的回归诊断-- car包
如何判断我们的线性回归模型是正确的? 1.回归诊断的基本方法opar<-par(no.readOnly=TRUE) fit <- lm(weight ~ height, data = wo ...
- Linux内核剖析(五)Linux内核的构建过程
参考 一次实验引发的故事 – kernel build system探索—vmlinux是如何炼成的– kernel makefile 深度探索Linux操作系统:系统构建和原理解析.pdf 问题 在 ...
- Effective Java 第三版——88. 防御性地编写READOBJECT方法
Tips 书中的源代码地址:https://github.com/jbloch/effective-java-3e-source-code 注意,书中的有些代码里方法是基于Java 9 API中的,所 ...
- CentOS 6.5 x64下查看服务版本
1.查看服务是否是64位 [root@Yimmei ~]# getconf LONG_BIT 642.查看服务器版本信息 [root@Yimmei ~]# lsb_release -a LSB Ver ...