Map嵌套Map:

例:

  AAA:

    Javas班:

      001  熊大

      002  熊二

    Hdoop班

      001  小猪猪

      002  小菲菲

  ★使用增强for循环遍历Set数组:

import java.util.HashMap;
import java.util.Set;
import java.util.Map.Entry; public class MapDemo {
public static void main(String[] args) {
//定义javas班的集合
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>>> aaa=AAA.entrySet();
//增强for循环遍历set集合
for(Entry<String, HashMap<String, String>> p:aaa){
//System.out.println(p);
//getkey获得AAA的键,getValue获得值
String classNameKey=p.getKey();
HashMap<String, String> classMap =p.getValue();
System.out.println(classNameKey);
//System.out.println(classMap);
//将classMap装进Set集合
Set<Entry<String, String>> s=classMap.entrySet();
for (Entry<String, String> q:s) {
//getKey获得班级的键,getValue获得值
String numKey=q.getKey();
String nameValue=q.getValue();
System.out.println(numKey+": "+nameValue);
}
}
}
}

 ★ 使用迭代器遍历Set数组

import java.util.Iterator;
import java.util.Map.Entry;
import java.util.HashMap;
import java.util.Set; //Map嵌套存储Map
public class MaoMapDemo {
public static void main(String[] args) {
//定义javas班的集合
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>>> classNameSet=AAA.entrySet();
/*迭代Set集合*/
//集合绑定迭代器
Iterator<Entry<String, HashMap<String, String>>> it=classNameSet.iterator();
while (it.hasNext()) {
//遍历集合
Entry<String, HashMap<String, String>> next= it.next();
//System.out.println(next);
//getkey获得键,getValue获得值
String classNameKey=next.getKey();
HashMap<String, String> classMap = next.getValue();
//AAA容器的键,班级名字classNameKey
System.out.println(classNameKey);
//AAA容器的值,班级所有元素classMap
//System.out.println(classMap); //entrySet将classMap集合的键封装到Set集合中。
Set<Entry<String, String>> studentSet=classMap.entrySet();
//迭代,集合绑定迭代器
Iterator<Entry<String, String>> studentIt=studentSet.iterator();
while (studentIt.hasNext()) {
//遍历集合
Entry<String, String> studentEntry = studentIt.next();
//getkey获得键,getValue获得值
String numKey=studentEntry.getKey();
String nameValue=studentEntry.getValue(); System.out.println(numKey+": "+nameValue);
}
} }
}

Map的嵌套使用的更多相关文章

  1. Map的嵌套 练习

    Map的嵌套   练习 利用迭代和增强for循环的两种方式实现如下效果 package cn.ccc; import java.util.HashMap;import java.util.Iterat ...

  2. 水果(map的嵌套)

    夏天来了~~好开心啊,呵呵,好多好多水果~~ Joe经营着一个不大的水果店.他认为生存之道就是经营最受顾客欢迎的水果.现在他想要一份水果销售情况的明细表,这样Joe就可以很容易掌握所有水果的销售情况了 ...

  3. Map的嵌套,HDU(1263)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1263 新学的map的嵌套 #include <stdio.h> #include < ...

  4. 双列集合Map的嵌套遍历

    双列集合Map的嵌套使用,例如HashMap中还有一个HashMap,这样的集合遍历起来稍微有点儿复杂.例如一个集合:HashMap<Integer,HashMap<String,Inte ...

  5. map的嵌套 + 例题(水果)

    水果 http://acm.hdu.edu.cn/showproblem.php?pid=1263 Problem Description 夏天来了~~好开心啊,呵呵,好多好多水果~~Joe经营着一个 ...

  6. Map接口----Map中嵌套Map

    package cn.good.com; import java.util.HashMap; import java.util.Iterator; import java.util.Map; impo ...

  7. Map的嵌套

    package cn.lijun.demo2; import java.util.HashMap; import java.util.Iterator; import java.util.Set; p ...

  8. fastjson排序 Map多层嵌套转换自动排序问题终极解决方案

    阅读更多 最近项目中用到了fastjson(1.2.15)需要将前端多层嵌套json转换为map,由于map的无序性,想了很多办法,最终找到使用 Map m= JSONArray.parseObjec ...

  9. golang map多层嵌套使用及遍历方法汇总

    原文:https://blog.csdn.net/boyhandsome7/article/details/79734847 ------------------------------------- ...

随机推荐

  1. flask项目结构(四)使用sqlalchemy和alembic

    简介 其实我不是啥正经人,错了,不是啥正经程序员,所能想到的估计也就码农一级吧,高级程序员,搞什么算法,什么人工智能,大数据计算…………离我还太遥远. 但是这并不妨碍我继续学习,继续写垃圾小程序. 反 ...

  2. java项目性能测试过程记录

    一 准备环境和指标 1.主机三台(linux,这里显示的都是伪主机地址):最好用干净的机子,做性能测试的时候别装其他东西在上面跑.  100.22.0.98  部署自己的项目服务 100.22.0.9 ...

  3. linux文件查看

    查看目录 #查看文件 使用  ls  命令,加上参数 -l 表示查看详细信息,-a 表示查看包含隐藏文件在内的文件.也可使用通配符,*代表任意个字符,? 表示单个字符. $ ls ch*.doc #表 ...

  4. :适配器模式:Adapter

    #ifndef __ADAPTER_H__ #define __ADAPTER_H__ #include <iostream> using namespace std; class Duc ...

  5. SQL-10 获取所有非manager的员工emp_no

    题目描述 获取所有非manager的员工emp_noCREATE TABLE `dept_manager` (`dept_no` char(4) NOT NULL,`emp_no` int(11) N ...

  6. JSP组件Telerik UI for JSP发布R1 2019 SP1|附下载

    Telerik UI for JSP拥有由Kendo UI for jQuery支持的40+ JSP组件,同时通过Kendo UI for jQuery的支持能使用JSP封装包构建现代的HTML5和J ...

  7. DevExpress v18.1新版亮点——Reporting篇(二)

    用户界面套包DevExpress v18.1日前终于正式发布,本站将以连载的形式为大家介绍各版本新增内容.本文将介绍了DevExpress Reporting v18.1 的新功能,快来下载试用新版本 ...

  8. [转]linux shell 多线程实现

    情景 shell脚本的执行效率虽高,但当任务量巨大时仍然需要较长的时间,尤其是需要执行一大批的命令时.因为默认情况下,shell脚本中的命令是串行执行的.如果这些命令相互之间是独立的,则可以使用“并发 ...

  9. 前端小白凭什么杀进 BAT?

    七天国庆黄金周转眼即逝,退散的除了出游的热情,还有一波求职热潮...IT 行业的技术者,时常被称为“码农.IT民工” 虽然行业内巨大的人才需求和相对容易得到的高薪,在源源不断的吸引各路人马加入,但它依 ...

  10. L299 EST 科技英语翻译-美学取向 (下)

    4. Ordering(有序美) DescriptiveExpositoryArgumentative Chinese: end focus 句尾焦点English: beginning focus ...