我的编程空间,编程开发者的网络收藏夹
学习永远不晚

java中的HashMap多层嵌套

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

java中的HashMap多层嵌套

java HashMap多层嵌套

package chapter12;
import java.util.HashMap;
public class Demo03 {
    //班级  -组  -学生
    static HashMap<String,HashMap<String,HashMap<String,Integer>>> map= new HashMap<>();
    public static void main(String[] args) {
        HashMap<String,HashMap<String,Integer>> map50= new HashMap<>();
        HashMap<String,Integer> map50_1= new HashMap<>();
        map50_1.put("50_1_3",77);
        map50_1.put("50_1_2",88);
        map50_1.put("50_1_1",99);
        map50.put("第一组",map50_1);
        HashMap<String,Integer> map50_2= new HashMap<>();
        map50_2.put("50_2_3",75);
        map50_2.put("50_2_2",85);
        map50_2.put("50_2_1",95);
        map50.put("第二组",map50_2);
        map.put("通达50班",map50);
        HashMap<String,HashMap<String,Integer>> map51= new HashMap<>();
        HashMap<String,Integer> map51_1= new HashMap<>();
        map51_1.put("51_1_3",77);
        map51_1.put("51_1_2",88);
        map51_1.put("51_1_1",99);
        map51.put("第一组",map51_1);
        HashMap<String,Integer> map51_2= new HashMap<>();
        map51_2.put("51_2_3",75);
        map51_2.put("51_2_2",85);
        map51_2.put("51_2_1",95);
        map51.put("第二组",map51_2);
        map.put("通达51班",map51);
        HashMap<String,HashMap<String,Integer>> map52= new HashMap<>();
        HashMap<String,Integer> map52_1= new HashMap<>();
        map52_1.put("52_1_3",77);
        map52_1.put("52_1_2",88);
        map52_1.put("52_1_1",99);
        map52.put("第一组",map52_1);
        HashMap<String,Integer> map52_2= new HashMap<>();
        map52_2.put("52_2_3",75);
        map52_2.put("52_2_2",85);
        map52_2.put("52_2_1",95);
        map52.put("第二组",map52_2);
        map.put("通达52班",map52);
        map.forEach((className,cMap)->{
            System.out.println(className+"信息展示:");
            System.out.println("*******************************");
            cMap.forEach((group,gMap)->{
                System.out.println(className+group);
                gMap.forEach((name,score)->{
                    System.out.println("姓名:"+name+"\t分数:"+score);
                });
            });
            System.out.println("*****************************");
        });
//        forEach();
    }
//    public static void forEach(){
//        map.forEach((className,cMap)->{
//            System.out.println(className+"信息展示:");
//            System.out.println("*******************************");
//            cMap.forEach((group,gMap)->{
//                System.out.println(className+group);
//                gMap.forEach((name,score)->{
//                    System.out.println("姓名:"+name+"\t分数:"+score);
//                });
//            });
//            System.out.println("*****************************");
//        });
//    }
}

三层HashMap的嵌套

package cn.itcast_04;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Set;

public class 集合的多层嵌套 {
	public static void main(String[] args) {
		
		//创建集合1     
		HashMap<String,HashMap<String,ArrayList<Student>>> dx  = 
								new HashMap<String,HashMap<String,ArrayList<Student>>>();
		
		//创建动漫区
		 HashMap<String,ArrayList<Student>> dm = new   HashMap<String,ArrayList<Student>> ();
		   //创建日漫集合
		     ArrayList<Student> array1 = new ArrayList<Student>();
		        //创建并添加数据
			    Student s1 = new Student("漩涡鸣人 ",27);
				Student s2 = new Student("宇智波佐助 ",30);
		        array1.add(s1);
		        array1.add(s2);
		  //创建国漫集合
		    ArrayList<Student> array2 = new ArrayList<Student>();
		       //创建并添加数据
		       Student s3 = new Student("闻人翊",29);
			   Student s4 = new Student("张楚岚  ",29);
			   array2.add(s3);
			   array2.add(s4);
		 //添加
			   dm.put("日漫", array1);
			   dm.put("国漫", array2);
		
			   
	   //创建小说区
			HashMap<String,ArrayList<Student>> xs = new   HashMap<String,ArrayList<Student>>();
	     //创建玄幻集合
			ArrayList<Student> array3 = new ArrayList<Student>();
			   //创建并添加数据
			  Student s5 = new Student("狠人大帝 ",25);
			  Student s6 = new Student("林动  ",32);
			   array3.add(s5);
			   array3.add(s6);
			   //创建奇幻集合
			   ArrayList<Student> array4 = new ArrayList<Student>();
			   //创建并添加数据
			    Student s7 = new Student("唐三 ",21);
				Student s8 = new Student("比比东 ",42);
			    array4.add(s7);
				array4.add(s8);	
		//添加
				xs.put("玄幻", array3);
				xs.put("奇幻", array4);
				
				dx.put("动漫", dm);
				dx.put("小说", xs);
				
				
		//遍历
				Set<String>  hmset=  dx.keySet();
				for(String hmkey:hmset) {
					System.out.println(hmset);
					HashMap<String,ArrayList<Student>> hmvalue = dx.get(hmkey);
					    Set<String>  hm1set=  hmvalue.keySet();
					for(String hm1key:hm1set) {
						System.out.println("\t"+hm1set);
						  ArrayList<Student> value = hmvalue.get(hm1key);
						 for(Student s:value) {
							 System.out.println("\t\t"+s.getName()+"-------"+s.getAng());
						 }
					}
				}						     		    
	}
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

java中的HashMap多层嵌套

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

java多层if嵌套如何优化

在Java中,多层的if嵌套可以通过以下方式进行优化:1. 使用逻辑运算符来简化条件判断:可以使用逻辑与(&&)和逻辑或(||)运算符来组合条件判断,从而减少嵌套的层数。2. 使用switch语句代替多层if嵌套:如果条件判断是基于一个变量
2023-09-13

Java多层嵌套JSON类型数据的方法

本篇内容介绍了“Java多层嵌套JSON类型数据的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!多层嵌套JSON类型数据解析简单来说:“
2023-06-29

python实现字典多层嵌套

对于字典:dict1={"a":1, "b":2, "c.1":3, "c.2":4, "d.5.2":5, "d.5.3":6, "d.4.1":7},将其实现多层嵌套为:dict2={'a': 1, 'b': 2, 'c': {'1':
2023-01-31

mongodb多层嵌套查询如何实现

在MongoDB中,多层嵌套查询可以通过使用“点符号”来访问嵌套的字段。下面是一个示例,用于说明如何实现多层嵌套查询:假设我们有一个包含以下结构的文档:{"_id": 1,"name": "John","age": 30,"addres
mongodb多层嵌套查询如何实现
2024-04-11

Sqlite多列多层嵌套查询怎么实现

在SQLite中进行多列多层嵌套查询,可以使用子查询或者连接操作来实现。以下是一个示例:假设我们有两个表,一个是学生表students,包含学生的姓名和年龄;另一个是成绩表grades,包含学生的成绩信息。首先,我们可以使用连接操作来查
Sqlite多列多层嵌套查询怎么实现
2024-04-11

mysql多层嵌套查询的方法是什么

在MySQL中,多层嵌套查询可以通过子查询或联合查询来实现。以下是两种常用的多层嵌套查询方法:使用子查询:SELECT column1, column2FROM table1WHERE column1 IN (SELECT column
mysql多层嵌套查询的方法是什么
2024-04-11

Mybatis中association标签多层嵌套问题怎么解决

这篇“Mybatis中association标签多层嵌套问题怎么解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Mybat
2023-06-29

python之如何查找多层嵌套字典的值

这篇文章主要介绍了python之如何查找多层嵌套字典的值问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2023-05-19

Vue3嵌套路由中使用keep-alive缓存多层的实现

本文介绍了Vue3嵌套路由中使用 keep-alive缓存多层的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2023-05-16

Android Fragment多层嵌套重影问题的解决方法

1解决bug的思想: //step1:当bug被发现(排除极低偶然性,单次性,开发工具导致) //step2:根据经验判断bug的重现场景,多次测试,直到精准的定位bug //step3:根据重现场景找到对应的代码 //step4:分析区域
2022-06-06

Python多层嵌套list的递归处理方法(推荐)

问题:用Python处理一个多层嵌套list['and', 'B', ['not', 'A'],[1,2,1,[2,1],[1,1,[2,2,1]]], ['not', 'A', 'A'],['or', 'A', 'B' ,'A'] , '
2022-06-04

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录