Java的map键值对的用法,map的遍历,Entry对象的使用
思路:
1、定义集合
2、存储数据
3、添加元素
4、遍历
4.1将需要遍历的集合的键封装到set集合中(这用到了entrySet方法,和Entry对象)
4.2声明迭代器或者用for增强循环
4.3通过set集合的getKey和getValue方法拿到值和键
5、打印输出就好
代码呈现如下:
package com.aaa.demo; import java.util.HashMap;
import java.util.Iterator;
import java.util.Map.Entry;
import java.util.Set; public class MaoMapDemo {
public static void main(String[] args) {
//定义Java班的集合
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);
aaa.put("近代", Hdoop);
entrySet1(aaa);
}
public static void entrySet(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();
//getKey getValue 得到键和值
String classNameKey = next.getKey();
System.out.println(classNameKey);
//aaa容器的键 班级姓名classMap
HashMap<String,String> classMap=next.getValue();
//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();
String numKey = studentEntry.getKey();
String nameValue = studentEntry.getValue();
System.out.println(numKey+": "+nameValue);
}
}
}
public static void entrySet1(HashMap<String,HashMap<String,String>> aaa){
//调用集合aaa的方法 entrySet将aaa集合的键封装到Set集合中
Set<Entry<String,HashMap<String,String>>> cNS=aaa.entrySet();
//for循环遍历得到班级
for(Entry<String,HashMap<String,String>> next:cNS){
//getKey getValue 得到键和值
String classKey = next.getKey();
//aaa容器的键 班级姓名classMap
HashMap<String, String> classValue = next.getValue();
//entrySet将classMap集合的键封装到set集合中
Set<Entry<String, String>> studentSet = classValue.entrySet();
System.out.println(classKey);
//for循环遍历
//Set<Entry<String, String>> entrySet = classValue.entrySet();
for(Entry<String, String> studentEntry:studentSet){
String numKey = studentEntry.getKey();
String nameValue = studentEntry.getValue();
System.out.println(numKey+": "+nameValue);
}
}
}
}
Java的map键值对的用法,map的遍历,Entry对象的使用的更多相关文章
- java 把json对象中转成map键值对
相关:Json对象与Json字符串的转化.JSON字符串与Java对象的转换 本文的目的是把json串转成map键值对存储,而且只存储叶节点的数据 比如json数据如下: {responseHeade ...
- 枚举类返回Map键值对,绑定到下拉框
有时候,页面的下拉框要显示键值对,但是不想从数据库取,此时我们可以写一个枚举类, Java后台代码 1.枚举类 import java.util.HashMap; import java.util.M ...
- 用字典给Model赋值并支持map键值替换
用字典给Model赋值并支持map键值替换 这个是昨天教程的升级版本,支持键值的map替换. 源码如下: NSObject+Properties.h 与 NSObject+Properties.m / ...
- 如何将Map键值的下划线转为驼峰
本文不再更新,可能存在内容过时的情况,实时更新请移步我的新博客:如何将Map键值的下划线转为驼峰: 例,将HashMap实例extMap键值下划线转为驼峰: 代码: HashMap<String ...
- Java Map 键值对排序 按key排序和按Value排序
一.理论准备 Map是键值对的集合接口,它的实现类主要包括:HashMap,TreeMap,Hashtable以及LinkedHashMap等. TreeMap:基于红黑树(Red-Black tre ...
- 通过反射,获取linkedHashMap的最后一个键值对。对map按照值进行排序。
1:通过反射,获取linkedHashMap的最后一个键值对. Map<Integer, Integer> map = new LinkedHashMap<>(); Field ...
- 根据map键值对,生成update与select语句,单条执行语句
方法 constructUpdateSQL private static String constructUpdateSQL(String tableName, List<Map<Stri ...
- Java的HashMap键值对存储结构解析
容器总体结构 Map存储键值对的数据结构是“数组+链表”的结构,结合了数组查询数据快和链表增删数据快的优点:用Entry[]存储键值对,Entry为类类型,类里面有四个属性:hash.K.V.next ...
- a=av###b=bv###c=cv map键值对 (a,av) (b,bv) (c,cv)
import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File; impo ...
随机推荐
- 【Fiddler学习】Fiddler面板的详细介绍(转)
转自:https://www.cnblogs.com/GreenLeaves/p/6971452.html 下面开始分析主界面的功能区: 1.Fiddler菜单栏,上图黑色部分,包括捕获http请求, ...
- 数据库设计和ER模型-------之关系模型的基本概念(第二章)
关系模型的基本术语 定义:用二维表格来表示实体集,用关键码表示实体之间联系的数据模型称为关系模型 有时也习惯称呼关系为表或表格,元组为行(Row),属性为列.关系中属性个数称为“元数”,元组个数称为“ ...
- iOS 第三方应用调用safari
一,直接调用safari打开url [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www. ...
- 38.纯 CSS 创作阶梯文字特效
原文地址:https://segmentfault.com/a/1190000015107942 HTML code: <div class="container"> ...
- java中的排序(自定义数据排序)--使用Collections的sort方法
排序:将一组数据按相应的规则 排列 顺序 1.规则: 基本数据类型:日常的大小排序. 引用类型: 内置引用类型(String,Integer..),内部已经指定规则,直接使用即可.---- ...
- IBeacon协议分析
IBeacon协议分析 跳转至: 导航. 搜索 对于一个UUID是E2C56DB5-DFFB-48D2-B060-D0F5A71096E0, major是0, minjor是0的iBeacon,此时的 ...
- oozie 工作流调试及报错
1. oozie 调用sql文件的workflow 错误汇总: 1)hive2server密码错误.(有时设置可以无密码,有时需要登陆密码,有时是单独的hive2server密码) Connecti ...
- SPARK执行流程
RDD运行原理 1.创建 RDD 对象 2.DAGScheduler模块介入运算,计算RDD之间的依赖关系.RDD之间的依赖关系就形成了DAG 3.每一个JOB被分为多个Stage,划分Stage的一 ...
- 浅析USB HID ReportDesc (HID报告描述符)
在USB中,USB Host是通过各种描述符来识别识别设备的,一般在设备枚举的过程将会获取有设备描述符/配置描述符/接口描述符/端点描述符/字符串描述符等 现在我们来介绍一下HID ReportDes ...
- 01-css的引入方式和常用选择器
一.css介绍 现在的互联网前端分三层: HTML:超文本标记语言.从语义的角度描述页面结构. CSS:层叠样式表.从审美的角度负责页面样式. JS:JavaScript .从交互的角度描述页面行为 ...