Map集合遍历的四种方式理解和简单使用-----不能for循环遍历
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,所以理解其用法,可以很好的使用和掌握

1 package com.bie;
2
3 import java.util.HashMap;
4 import java.util.Iterator;
5 import java.util.Map;
6
7 /**
8 * @author BieHongLi
9 * @version 创建时间:2017年2月25日 下午8:58:54
10 *
11 */
12 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的一些常用的知识点,和取值的变形形式,都需要掌握和了解

1 package com.bie;
2
3 import java.util.Collection;
4 import java.util.HashMap;
5 import java.util.Map;
6 import java.util.Set;
7
8 /**
9 * @author BieHongLi
10 * @version 创建时间:2017年2月26日 上午11:29:59
11 *
12 */
13 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集合遍历的四种方式理解和简单使用-----不能for循环遍历的更多相关文章
- Map集合遍历的四种方式理解和简单使用
~Map集合是键值对形式存储值的,所以遍历Map集合无非就是获取键和值,根据实际需求,进行获取键和值 1:无非就是通过map.keySet()获取到值,然后根据键获取到值 for(String s:m ...
- map遍历的四种方式
原文 http://blog.csdn.net/dayanxuqun/article/details/26348277 以下是map遍历的四种方式: // 一.推荐只用value的时候用,都懂的... ...
- Java Enum枚举 遍历判断 四种方式(包括 Lambda 表达式过滤)
示例代码如下: package com.miracle.luna.lambda; import java.util.Arrays; /** * @Author Miracle Luna * @Date ...
- PHP数组循环遍历的四种方式
1.使用for循环遍历数组 conut($arr);用于统计数组元素的个数. for循环只能用于遍历,纯索引数组!!!! 如果存在关联数组,count统计时会统计两种数组的总 ...
- JAVA中集合输出的四种方式
在JAVA中Collection输出有四种方式,分别如下: 一) Iterator输出. 该方式适用于Collection的所有子类. public class Hello { public stat ...
- java中Map遍历的四种方式
在java中所有的map都实现了Map接口,因此所有的Map(如HashMap, TreeMap, LinkedHashMap, Hashtable等)都可以用以下的方式去遍历. 方法一:在for循环 ...
- Java List集合 遍历 四种方式(包含 Lambda 表达式遍历)
示例代码如下: package com.miracle.luna.lambda; import java.util.ArrayList; import java.util.List; /** * @A ...
- Java Array数组 遍历 四种方式(包含 Lambda 表达式遍历)
示例代码如下: package com.miracle.luna.lambda; import java.util.Arrays; /** * @Author Miracle Luna * @Date ...
- php中的数组遍历的几种方式
[(重点)数组循环遍历的四种方式] 1.使用for循环遍历数组 conut($arr);用于统计数组元素的个数. for循环只能用于遍历,纯索引数组!!!! 如果存在关联数 ...
随机推荐
- Linux-Ubuntu16.0.4相关命令
1.更新软件源 sudo apt-get update 2.shell命令 基本格式:命令 [-选项] [-命令参数] ls #查看当前文件夹下的文件 ls -l XXXX #查看XXXX文件夹下的 ...
- Go语言学习之6 反射详解
1.反射: 定义: 反射就是程序能够在运行时检查变量和值,求出它们的类型. 可以在运行时动态获取变量的相关信息 Import ( ...
- docker 安装完mysql 后客户端无法访问
1.在虚拟机的centos 中安装 docker 的mysql 镜像. docker run --name mysql01 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=12 ...
- 机器学习与数据科学 基于R的统计学习方法(基础部分)
1.1 机器学习的分类 监督学习:线性回归或逻辑回归, 非监督学习:是K-均值聚类, 即在数据点集中找出“聚类”. 另一种常用技术叫做主成分分析(PCA) , 用于降维, 算法的评估方法也不尽相同. ...
- java ----> 手动编译java项目
环境: jdk1.8,cmd,notepad++ 创建java工程test,创建文件夹: src classes lib 说明: src 放置.java文件 classes 放置.class文件 li ...
- 关于在使用sparksql写程序是报错以及解决方案:org.apache.spark.sql.AnalysisException: Duplicate column(s): "name" found, cannot save to file.
说明: spark --version : 2.2.0 我有两个json文件,分别是emp和dept: emp内容如下: {"name": "zhangsan" ...
- 守护进程函数——内部的小范围try catch 增强了 while死循环执行的 可靠性
void Watch() { try { LogHelper.WriteLog("WatchServi ...
- 赵炯博士《Linux内核完全注释》
赵炯:男,1963年10月5日出生,江苏苏州人,汉族. 同济大学机械工程学院机械电子教研室副教授,从事教学和科研工作. 现在主要为硕士和博士研究生开设<计算机通信技术>.<计算机控制 ...
- Spring Boot 获得帮助
如果你在使用 Spring Boot 的时候遇到了问题,我们很乐意为你提供帮助. 请访问 IX. How-to指南 中的内容 — 在这个指南中为常见的多数问题提供了解决方案. 学习更多有关 Sprin ...
- 4.1.6 Grundy数-硬币游戏2
Problem Description: Alice 和 Bob 在玩一个游戏.给定 k 个数字 a1,a2,……,ak.一开始,有n堆硬币,每堆各有 Xi 枚硬币.Alice 和 Bob 轮流选出一 ...