~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,所以理解其用法,可以很好的使用和掌握

 package com.bie;

 import java.util.HashMap;
import java.util.Iterator;
import java.util.Map; /**
* @author BieHongLi
* @version 创建时间:2017年2月25日 下午8:58:54
*
*/
public class MapTest01 { public static void main(String[] args) {
Map<String, String> map=new HashMap<String, String>();
map.put("张三1", "男");
map.put("张三2", "男");
map.put("张三3", "男");
map.put("张三4", "男");
map.put("张三5", "男"); //第一种遍历map的方法,通过加强for循环map.keySet(),然后通过键key获取到value值
for(String s:map.keySet()){
System.out.println("key : "+s+" value : "+map.get(s));
}
System.out.println("===================================="); //第二种只遍历键或者值,通过加强for循环
for(String s1:map.keySet()){//遍历map的键
System.out.println("键key :"+s1);
}
for(String s2:map.values()){//遍历map的值
System.out.println("值value :"+s2);
}
System.out.println("===================================="); //第三种方式Map.Entry<String, String>的加强for循环遍历输出键key和值value
for(Map.Entry<String, String> entry : map.entrySet()){
System.out.println("键 key :"+entry.getKey()+" 值value :"+entry.getValue());
}
System.out.println("===================================="); //第四种Iterator遍历获取,然后获取到Map.Entry<String, String>,再得到getKey()和getValue()
Iterator<Map.Entry<String, String>> it=map.entrySet().iterator();
while(it.hasNext()){
Map.Entry<String, String> entry=it.next();
System.out.println("键key :"+entry.getKey()+" value :"+entry.getValue());
}
System.out.println("===================================="); } }

4:Map的一些常用的知识点,和取值的变形形式,都需要掌握和了解

 package com.bie;

 import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Set; /**
* @author BieHongLi
* @version 创建时间:2017年2月26日 上午11:29:59
*
*/
public class MapTest02 { public static void main(String[] args) {
//1:key,value都是object类型的
//2:key必须是唯一的,不唯一,那么后面的value会把前面的value覆盖
//3:对于HashMap,key可以为空
//4:value可以为空,也可以为空
//5:HashTable的key和value不能为空
//6:properties的key和value必须为String类型的
Map<String , String> map=new HashMap<>();
map.put("null", "this is null 1");
map.put("null", "this is null 2");
System.out.println(map.size());
System.out.println(map.get(null)); System.out.println("=============================");
//循环显示map类型的key以及对应的value
//三个集合,key的集合,value的集合,键值对的集合
Set<String> keys=map.keySet();
for(String s:keys){
System.out.println(s);
}
System.out.println("=============================");
Collection<String> values=map.values();//值的集合
System.out.println(values);
System.out.println("=============================");
Set<Map.Entry<String, String>> entrys=map.entrySet();//键值对的集合
for(Map.Entry<String, String> entry:entrys){
System.out.println(entry.getKey()+" "+entry.getValue());
} }
}

Map集合遍历的四种方式理解和简单使用的更多相关文章

  1. Map集合遍历的四种方式理解和简单使用-----不能for循环遍历

    Map集合遍历的四种方式理解和简单使用   ~Map集合是键值对形式存储值的,所以遍历Map集合无非就是获取键和值,根据实际需求,进行获取键和值 1:无非就是通过map.keySet()获取到值,然后 ...

  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. Map接口中的常用方法和Map集合遍历键找值方式

    Map接口中定义了很多方法,常用的如下: public V put(K key,V value) 将指定的值与此映射中的指定键相关联(可选操作) V remove(Object key); 如果此映射 ...

  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集合遍历的几种方式总结及比较

    集合类的通用遍历方式, 用迭代器迭代: Iterator it = list.iterator(); while(it.hasNext()) { Object obj = it.next(); }   ...

  8. Map集合遍历的2种方法

    Map是一个集合的接口,是key-value相映射的集合接口,集合遍历的话,需要通过Iterator迭代器来进行. Iterator是什么东西: java.util包下的一个接口: 对 collect ...

  9. Map集合遍历的4种方法

    完全复制https://www.cnblogs.com/blest-future/p/4628871.html import java.util.HashMap; import java.util.I ...

随机推荐

  1. jackson的自动检测机制

    jackson允许使用任意的构造方法或工厂方法来构造实例 使用@JsonAutoDetect(作用在类上)来开启/禁止自动检测 fieldVisibility:字段的可见级别 ANY:任何级别的字段都 ...

  2. ThinkPHP 3.2 DEMO案例系列【phpmailer批量发送邮件】

    但是邮件和短信相比在一些场景依然有着重要的意义和优势: 1:零成本:发邮件没有费用: 2:内容丰富且量大:邮件可以长篇大论:图文并茂: 3:增加访问量:用户很容易通过邮件中的链接访问网站: 好了:下面 ...

  3. jsp中的JSTL与EL表达式用法

    JSTL (JSP Standard Tag Library ,JSP标准标签库) JSTL标签库分为5类:JSTL核心标签库.JSTL函数标签库.数据库标签库.I18N格式化标签库.XML标签库. ...

  4. UE4的AI学习(1)——基本概念

    AI学习当中,不学习行为树基本概念就不能明白具体实例中的操作意义,但是没有经过具体实例实验,又觉得基本概念抽象难以理解.建议先泛读(1)(2)后再对具体的细节进行死磕,能较深的理解行为树的具体概念.第 ...

  5. yolov3实践(一)

    很多博友看了我的第一篇博客yolo类检测算法解析——yolo v3,对其有了一定的认识和了解,但是并没有贴出代码和运行效果,略显苍白.因此在把篇博客理论的基础上,造就了第一篇实践文章,也就是本文.只要 ...

  6. yo install generator-gulp-react遇到UNMET PEER DEPENDENCY问题

    最近在用yeoman下载下来的框架配置react环境 yo install generator-gulp-react安装框架包 遇到了 UNMET PEER DEPENDENCY问题 找不到依赖的gu ...

  7. 说几个python与c区别的地方以及静态变量,全局变量的区别

    一: python代码: a = 2 def b(): print a a = 4 print a b() 在b函数中,有a=4这样的代码,说明a是函数b内部的局部变量,而不是外部的那个值为2的全局变 ...

  8. WebRTC架构和协议栈-zz

    为了便于理解,我们来看一个最基本的三角形WebRTC架构(图4).在这个架构中,移动电话用“浏览器M”表示,笔记本电脑用“浏览器L”表示,通过Web服务器将它们连接起来.要建立一个实时媒体通讯,两台设 ...

  9. OpenCV:Debug和Release模式 && 静态和动态编译

    1.Release和Debug的区别 Release版称为发行版,Debug版称为调试版. Debug中可以单步执行.跟踪等功能,但生成的可执行文件比较大,代码运行速度较慢.Release版运行速度较 ...

  10. [转]UART通信简介

    1.前言 UART通信,即通用异步收发传输器(Universal Asynchronous Receiver/Transmitter). 串行通信是指利用一条传输线将资料一位位地顺序传送.特点是通信线 ...