Map.Entry的定义
        Map的entrySet()方法返回一个实现Map.Entry接口的对象集合。集合中每个对象都是底层Map中一个特定的键/值对。通过这个集合的迭代器,获得每一个条目(唯一获取方式)的键或值并对值进行更改。Map.Entry中的常用方法如下所示:

(1) Object getKey(): 返回条目的关键字
  (2) Object getValue(): 返回条目的值
  (3) Object setValue(Object value): 将相关映像中的值改为value,并且返回旧值

Map.Entry的作用
        Map.Entry是为了更方便的输出map键值对。一般情况下,要输出Map中的key 和 value  是先得到key的集合keySet(),然后再迭代(循环)由每个key得到每个value。values()方法是获取集合中的所有值,不包含键,没有对应关系。而Entry可以一次性获得这两个值。

常用的遍历Map的方法

Map<String, String> map = new HashMap<String, String>();  map.put("1", "value1");  map.put("2", "value2");  map.put("3", "value3");  //第一种:普遍使用,由于二次取值,效率会比第二种和第三种慢一倍System.out.println("通过Map.keySet遍历key和value:");  for (String key : map.keySet()) {  System.out.println("key= "+ key + " and value= " + map.get(key));  }  //第二种  System.out.println("通过Map.entrySet使用iterator遍历key和value:");  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() + " and value= " + entry.getValue());  }  //第三种:无法在for循环时实现remove等操作  System.out.println("通过Map.entrySet遍历key和value");  for (Map.Entry<String, String> entry : map.entrySet()) {  System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());  }  //第四种:只能获取values,不能获取key System.out.println("通过Map.values()遍历所有的value,但不能遍历key");  for (String v : map.values()) {  System.out.println("value= " + v);  } 

Map.entrySet迭代器会生成EntryIterator,其返回的实例是一个包含key/value键值对的对象。而keySet中迭代器返回的只是key对象,还需要到map中二次取值。故entrySet要比keySet快一倍左右。

Map.Entry 的理解相关推荐

  1. keySet和Map.Entry的理解

    keySet方法: Map.Entry<k,v>内部接口: package com.mingyang.collector.Map;import java.util.HashMap; imp ...

  2. Map.entry到底是什么鬼?--------(不理解的就进来看看呀呀)

    如果连Map是什么你都理解不了,那我相信你也不会看到这里了. 文章目录 一.Map.entry是什么? 二.Map如何遍历? 三.分享结束 一.Map.entry是什么? Map是java中的接口,M ...

  3. 另一种遍历Map的方式: Map.Entry 和 Map.entrySet()

    源网址: http://blog.csdn.net/mageshuai/article/details/3523116 今天看Think in java 的GUI这一章的时候,里面的TextArea这 ...

  4. Java中Map集合如何理解(四)——精简

    目录 引言 概念 Map集合实现类 HashMap LinkedHashMap TreeMap 默认排序 自定义排序方式 常用API 遍历Map集合 键找值 键值对 Lambda表达式 结束语 引言 ...

  5. 【机器学习基本理论】详解最大后验概率估计(MAP)的理解

    [机器学习基本理论]详解最大后验概率估计(MAP)的理解 https://mp.weixin.qq.com/s/dQxN46wEbFrpvV369uOHdA 最大似然估计(Maximum likeli ...

  6. 介绍map.entry接口

    Map是java中的接口,Map.Entry是Map的一个内部接口.java.util.Map.Entry接口主要就是在遍历map的时候用到. Map提供了一些常用方法,如keySet().entry ...

  7. Java中Map的entrySet()详解 || Map.Entry的详解

    Map中存放的元素均为键值对,故每一个键值对必然存在一个映射关系. Map中采用Entry内部类来表示一个映射项,映射项包含Key和Value Map.Entry的详解

  8. java Map及Map.Entry详解

    Map是java中的接口,Map.Entry是Map的一个内部接口. Map提供了一些常用方法,如keySet().entrySet(),values()等方法. keySet()方法返回值是Map中 ...

  9. java map中的entry_java中Map及Map.Entry详解(组图)

    java中Map及Map.Entry详解(组图) 08-22栏目:技术 TAG:map.entry map.entry Map是java中的接口,Map.Entry是Map的一个内部接口. copyr ...

最新文章

  1. [NOIp 2013]货车运输
  2. Java基础-面向对象第二特征之继承(Inheritance)
  3. Android7.0新特性、新功能
  4. wxWidgets:wxRichTextFormattingDialog类用法
  5. 背包问题 贪心算法 java_JS基于贪心算法解决背包问题
  6. Oracle学习总结(5)—— SQL语句经典案例
  7. EXCEL条件筛选函数
  8. 开发过程中沟通的重要性
  9. html图片闪烁设置,HTMLCSS基础-图片按钮闪烁解决方案
  10. HC74h595 串行输出再进行串口输出(串行通信嵌套)已测试成功。
  11. 《第四部分-练习题:微信朋友圈、支付宝支付功能测试点》
  12. 泊松融合进阶——DFT求解二维泊松方程
  13. 指纹图像方向图matlab,基于Matlab实现的指纹图像细节特征提取
  14. 接收输入的一行字符,统计出字符串包含数字的个数 2、编写一个程序,计算字符串中子串出现的次数 3、请输入星期几的第1个字母,用来判断是星期几,如果第1个字母一样,则继续判断第2个字母,依次类推。
  15. oracle计算timestamp差,Oracle 计算timestamp和date类型的时间差
  16. 既快又准并且低开销,一作亲解 MICRO 2021论文:一种自动化功耗模拟架构
  17. 《重新定义公司》读书笔记
  18. vlc for android 不能全屏,或者画面不能铺满的问题。
  19. 软件体系结构(2)———软件设计概论
  20. libminimsgbus网络通信库

热门文章

  1. 用java计算电阻,NTC热敏电阻计算公式
  2. linux开发板设置时间,开发板上修改时间方法
  3. 【开源STM32自平衡小车】 教你如何自己DIY一辆双轮自平衡小车
  4. 如何使用python装饰器_如何使用装饰器(瓶子.py)
  5. 如果自己的微信被对方删除,微信会有哪些提示?
  6. C++ list initialization
  7. 在tomcat集群下利用redis实现单点登陆
  8. 强哥语录摘抄(郑强教授)
  9. PLC控制技术与组态技术实训装置
  10. css 动画 呼吸 呼吸灯 效果