用来遍历map集合的方法
map集合是以键值对进行存储值的,所以遍历map集合无非就是获取键和值,根据实际需求,进行获取键和值.
1.无非就是通过map.keySet()获取到值,然后根据键获取到值.
for(String s:map.keySet()){
System.out.println("key : "+s+" value : "+map.get(s));
}
2.通过Map.Entry(String,String)获取,然后使用entry.getKey()获取到键,通过entry.getValue()获取到值
for(Map.Entry<String, String> entry : map.entrySet()){
System.out.println("键 key :"+entry.getKey()+" 值value :"+entry.getValue());
}
3.其中通过Iterator也是为了最终获得entry,所以理解其用法,可以很好的使用和掌握
public class MapTest01 {
13
14 public static void main(String[] args) {
15 Map<String, String> map=new HashMap<String, String>();
16 map.put("张三1", "男");
17 map.put("张三2", "男");
18 map.put("张三3", "男");
19 map.put("张三4", "男");
20 map.put("张三5", "男");
21
22 //第一种遍历map的方法,通过加强for循环map.keySet(),然后通过键key获取到value值
23 for(String s:map.keySet()){
24 System.out.println("key : "+s+" value : "+map.get(s));
25 }
26 System.out.println("====================================");
27
28 //第二种只遍历键或者值,通过加强for循环
29 for(String s1:map.keySet()){//遍历map的键
30 System.out.println("键key :"+s1);
31 }
32 for(String s2:map.values()){//遍历map的值
33 System.out.println("值value :"+s2);
34 }
35 System.out.println("====================================");
36
37 //第三种方式Map.Entry<String, String>的加强for循环遍历输出键key和值value
38 for(Map.Entry<String, String> entry : map.entrySet()){
39 System.out.println("键 key :"+entry.getKey()+" 值value :"+entry.getValue());
40 }
41 System.out.println("====================================");
42
43 //第四种Iterator遍历获取,然后获取到Map.Entry<String, String>,再得到getKey()和getValue()
44 Iterator<Map.Entry<String, String>> it=map.entrySet().iterator();
45 while(it.hasNext()){
46 Map.Entry<String, String> entry=it.next();
47 System.out.println("键key :"+entry.getKey()+" value :"+entry.getValue());
48 }
49 System.out.println("====================================");
50
51 }
52
53
54 }
4.Map的一些常用的知识点,和取值的变形形式,都需要掌握和了解
public class MapTest02 {
14
15 public static void main(String[] args) {
16 //1:key,value都是object类型的
17 //2:key必须是唯一的,不唯一,那么后面的value会把前面的value覆盖
18 //3:对于HashMap,key可以为空
19 //4:value可以为空,也可以为空
20 //5:HashTable的key和value不能为空
21 //6:properties的key和value必须为String类型的
22 Map<String , String> map=new HashMap<>();
23 map.put("null", "this is null 1");
24 map.put("null", "this is null 2");
25 System.out.println(map.size());
26 System.out.println(map.get(null));
27
28 System.out.println("=============================");
29 //循环显示map类型的key以及对应的value
30 //三个集合,key的集合,value的集合,键值对的集合
31 Set<String> keys=map.keySet();
32 for(String s:keys){
33 System.out.println(s);
34 }
35 System.out.println("=============================");
36 Collection<String> values=map.values();//值的集合
37 System.out.println(values);
38 System.out.println("=============================");
39 Set<Map.Entry<String, String>> entrys=map.entrySet();//键值对的集合
40 for(Map.Entry<String, String> entry:entrys){
41 System.out.println(entry.getKey()+" "+entry.getValue());
42 }
43
44 }
45 }
用来遍历map集合的方法的更多相关文章
- Java 遍历Map集合的方法
方法一:通过Map.keySet,遍历key和value Map<String, Object> map = new HashMap<>(); for (String key ...
- 遍历Map集合的方法
创建一个MAP的栗子: Map<String, Integer> tempMap = new HashMap<String, Integer>(); tempMap.put(& ...
- 遍历Map集合四中方法
public static void main(String[] args) { Map<String, String> map = new HashMap<String, Stri ...
- 遍历Map集合:java.util.Map.Entry、KeySet两种方式
遍历Map集合的两种方式: 1.用KeySet Map.keySet(),返回一个存放所有key的set集合,通过遍历集合,根据key值取出所有的value值. Map<String,Strin ...
- (1)集合 ---遍历map集合
Map接口 实现Map接口的类用来存储键(key)-值(value) 对.Map 接口的实现类有HashMap和TreeMap等.Map类中存储的键-值对通过键来标识,所以键值不能重复. Ha ...
- Java之五种遍历Map集合的方式
摘要:在java中所有的map都实现了Map接口,因此所有的Map都可以用以下的方式去遍历. 在java中所有的map都实现了Map接口,因此所有的Map都可以用以下的方式去遍历.这篇文章主要给大家介 ...
- 键盘录入一个文件夹路径,统计该文件夹(包含子文件夹)中每种类型的文件及个数,注意:用文件类型(后缀名,不包含.(点),如:"java","txt")作为key, 用个数作为value,放入到map集合中,遍历map集合
package cn.it.zuoye5; import java.io.File;import java.util.HashMap;import java.util.Iterator;import ...
- 遍历Map集合的几种方式
import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Map.Entr ...
- 遍历Map集合的四中方法
->有这样一个Map集合 Map<String, String> map = new HashMap<String, String>(); map.put(", ...
随机推荐
- 关于TV工厂菜单参数的具体说明
1.ADC Adjust 此项是针对YPbPr.VGA端口进行处理的,在三路R/G/B或者YPb/Pr信号输入到芯片时候,由于存在硬件上的偏差,导致信号和标准信号存在偏差,需要对信号进行ADC校正.光 ...
- cnbolgs博客中添加Latex支持
参考:http://www.cnblogs.com/ilogic/archive/2012/08/05/latex.html 主要是利用在线生成公式的工具:MathJax,但要在博客上获得 MathJ ...
- Word 删除多余空行
打开查找替换框: 「^p^p」(意思:换行,换行)替换为「^p」 「^p^w^p」(意思:换行,空白区域,换行)替换为「^p」 未完 ...... 点击访问原文(进入后根据右侧标签,快速定位到本文)
- luoguP1823 [COI2007] Patrik 音乐会的等待
题目描述 N个人正在排队进入一个音乐会.人们等得很无聊,于是他们开始转来转去,想在队伍里寻找自己的熟人.队列中任意两个人A和B,如果他们是相邻或他们之间没有人比A或B高,那么他们是可以互相看得见的. ...
- Python25之字典1
一.字典的意义 字典不同于前述的序列类型,他是一种映射类型,它的引入就是为了简化定义索引值和元素值存在的特定关系的定义和访问问题 二,字典定义 字典变量名 = {key1 : value1, key2 ...
- 2019最新黑链代码expression:隐藏链接代码
之前有收集了一些主流的隐藏链接代码,最近又发现一种相当牛X的代码,如下: 源代码: <div style="position:absolute;left:expression(1-90 ...
- 1.关于Python,你可能不知道的
启示录 写在前面———— 至于python有多牛逼,这里不介绍了,安装也不说了,网上一堆一堆的安装教程. 本文只介绍需要知道的 常识知识———— 1.python 发音:英 [ˈpaɪθən] 美 [ ...
- vim常用命令的使用
中文博客:https://www.cnblogs.com/lijia0511/p/5644566.html 英文原文:http://yannesposito.com/Scratch/en/blog/L ...
- 网易自动化测试工具(airtest)的环境部署
airtest 环境配置: 1.安装Python2.7 及 Python3.6 版本(2个需要都安装) 2.配置python环境变量(AirtestIDE 需要在python2.x的环境下运行,所以尽 ...
- fastjson<1.2.47 RCE 漏洞复现
这两天爆出了 fastjson 的老洞,复现简单记录一下. 首先使用 spark 搭建一个简易的利用 fastjson 解析 json 的 http server. package cn.hackte ...