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循环遍历的更多相关文章

  1. Map集合遍历的四种方式理解和简单使用

    ~Map集合是键值对形式存储值的,所以遍历Map集合无非就是获取键和值,根据实际需求,进行获取键和值 1:无非就是通过map.keySet()获取到值,然后根据键获取到值 for(String s:m ...

  2. map遍历的四种方式

    原文 http://blog.csdn.net/dayanxuqun/article/details/26348277 以下是map遍历的四种方式: // 一.推荐只用value的时候用,都懂的... ...

  3. Java Enum枚举 遍历判断 四种方式(包括 Lambda 表达式过滤)

    示例代码如下: package com.miracle.luna.lambda; import java.util.Arrays; /** * @Author Miracle Luna * @Date ...

  4. PHP数组循环遍历的四种方式

     1.使用for循环遍历数组     conut($arr);用于统计数组元素的个数.     for循环只能用于遍历,纯索引数组!!!!     如果存在关联数组,count统计时会统计两种数组的总 ...

  5. JAVA中集合输出的四种方式

    在JAVA中Collection输出有四种方式,分别如下: 一) Iterator输出. 该方式适用于Collection的所有子类. public class Hello { public stat ...

  6. java中Map遍历的四种方式

    在java中所有的map都实现了Map接口,因此所有的Map(如HashMap, TreeMap, LinkedHashMap, Hashtable等)都可以用以下的方式去遍历. 方法一:在for循环 ...

  7. Java List集合 遍历 四种方式(包含 Lambda 表达式遍历)

    示例代码如下: package com.miracle.luna.lambda; import java.util.ArrayList; import java.util.List; /** * @A ...

  8. Java Array数组 遍历 四种方式(包含 Lambda 表达式遍历)

    示例代码如下: package com.miracle.luna.lambda; import java.util.Arrays; /** * @Author Miracle Luna * @Date ...

  9. php中的数组遍历的几种方式

    [(重点)数组循环遍历的四种方式]   1.使用for循环遍历数组     conut($arr);用于统计数组元素的个数.     for循环只能用于遍历,纯索引数组!!!!     如果存在关联数 ...

随机推荐

  1. Python 百分比计算

    遇到计算百分比的情况,查了一下,有两种方式 具体实现方式见下面代码 # 方式1 格式化为float ,然后 处理成%格式, 需要对分子/分母 * 100如下, percentList.append(' ...

  2. java再次学习

    1.maven配置.

  3. 子序列的按位或 Bitwise ORs of Subarrays

    2018-09-23 19:05:20 问题描述: 问题求解: 显然的是暴力的遍历所有的区间是不可取的,因为这样的时间复杂度为n^2级别的,对于规模在50000左右的输入会TLE. 然而,最后的解答也 ...

  4. 日常英语---十、MapleStory/Monsters/Level 191-201(Sad Erda:向你发射炮弹进行攻击)

    日常英语---十.MapleStory/Monsters/Level 191-201(Sad Erda:向你发射炮弹进行攻击) 一.总结 一句话总结:一种悲伤的精神,形成于奥术之河,一个黑法师能够融合 ...

  5. Go语言学习之6 反射详解

    1.反射: 定义: 反射就是程序能够在运行时检查变量和值,求出它们的类型.                   可以在运行时动态获取变量的相关信息                   Import ( ...

  6. gradlew 的https代理设定

    在内网编译vlc for Android 时, 总是在 [./gradlew assemble] 卡住, 在网上找到了设置代理的方法: 在gradlew 的同一目录,建立一个 gradle.prope ...

  7. sql 聚合函数和group by 联合使用

    原文 很多时候单独使用聚合函数的时候觉得很容易,求个平均值,求和,求个数等,但是和分组一起用就有点混淆了,好记性不如烂笔头,所以就记下来以后看看. 常用聚合函数罗列 1 AVG() - 返回平均值 C ...

  8. Java接口简单理解

    1.接口: 接口成员变量默认声明方式:public.static.final 接口成员方法默认声明方式:public.abstract public interface Interface_class ...

  9. hadoop 企业应用案例--大众点评

    hadoop 企业应用案例--大众点评 http://f.dataguru.cn/thread-260531-1-1.html

  10. python3—列表

    列表是什么 name = ["jim", "lilei", "lucy"] #方括号表示,逗号分隔 print(name) print(na ...