因为Map集合中的键值对排列无序,所以不能用传统的for循环来遍历,只能使用加强循环(for-each)和迭代器进行遍历。

让我们通过例子来了解Map集合的遍历:

package gather;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;//引包
public class Test {public static void main(String[] args) {Map<String,Integer> scores = new HashMap<String,Integer>();scores.put("张三", 100);scores.put("李四", 70);scores.put("王五", 80);scores.put("赵六", 72);//先存入几对数据//遍历数组://第一种:使用keySet(),用于返回Map集合中所有key组成的Set集合Set<String> names = scores.keySet();//获取Map集合中所有key-value中的key组成的Set集合(说白了,names里存的都是key)System.out.println(names);//[李四, 张三, 王五, 赵六](不一定是这个顺序)//a、加强循环for(String str:names){int value = scores.get(str);System.out.println(value);}//70 100 80 72 (不一定是这个顺序)//b、迭代器Iterator<String> iterator = names.iterator();//将集合中的数据做转存,也就是copywhile(iterator.hasNext()){//hasNext()用于判断集合中是否含有下一个元素int value = scores.get(iterator.next());System.out.println(value);}//70 100 80 72 (不一定是这个顺序)//第二种:使用entrySet(),将Map集合中的每一个key-value转换为一个Entry对象,并返回所有的Entry对象组成的Set集合Set<Entry<String,Integer>> entries = scores.entrySet();System.out.println(entries);//[李四=70, 张三=100, 王五=80, 赵六=72]//a、加强循环for(Entry<String,Integer> entry : entries){String name = entry.getKey();int value = entry.getValue();System.out.println(name+"="+value);}//李四=70  张三=100  王五=80  赵六=72//b、迭代器Iterator<Entry<String, Integer>> iterator1 = entries.iterator();while(iterator.hasNext()){Entry<String,Integer> entry = iterator1.next();String name = entry.getKey();int value = entry.getValue();System.out.println(name+"="+value);}//李四=70  张三=100  王五=80  赵六=72}}

Java中的Map集合遍历总结(详尽版)相关推荐

  1. JAVA中的Map集合

    JAVA中的Map集合 1.Map简介 java.util.map接口 1.Map称为查找表,该数据结构的样子是一个"多行两列"的表格,左列为key,右列为value,Map总是根 ...

  2. java 中map_Java Map集合详解

    Map 是一种键-值对(key-value)集合,Map 集合中的每一个元素都包含一个键对象和一个值对象.其中,键对象不允许重复,而值对象可以重复,并且值对象还可以是 Map 类型的,就像数组中的元素 ...

  3. Java中的Map集合及其子类HashMap,LinkedHashMap,TreeMap,ConcurrentHashMap

    一 .Map public interface Map<K,V> 将键映射到值的对象.一个映射不能包含重复的键:每个键最多只能映射到一个值.此接口哦取代了Dictionary类,后者完全是 ...

  4. Scala中映射的语法(对应Java中的Map集合的定义)

    1. 映射 在Scala中,把哈希表这种数据结构叫做映射 1.1. 构建映射 1.2. 获取和修改映射中的值 好用的getOrElse 注意:在Scala中,有两种Map,一个是immutable包下 ...

  5. 18、java中的Map集合

    1.Map集合 1.1Map集合概述和特点 Map集合概述 interface Map<K,V> K:键的类型:V:值的类型 Map集合的特点 键值对映射关系 一个键对应一个值 键不能重复 ...

  6. java 定义map集合_Java中的Map集合

    Map集合: 个人感觉Map接口以后会经常用到,可以很清晰地查找某个对象,要熟悉其四种遍历方法.特别注意其键值对的键不能是重复的,有想定义有序存取的话,可以使用LinkedHashMap集合.不过定义 ...

  7. java——集合——Map集合——Map集合遍历键找值方式

    Map集合遍历键找值方式 Map集合的第一种遍历方式:通过键找值的方式 Map集合中的方法: SetkeySet() 返回此映射中包含的键的 Set 视图. 实现步骤: 1.使用Map集合中的方法ke ...

  8. java中的Map遍历方式总结

    java中的Map遍历方式总结 import java.util.HashMap; import java.util.Iterator; import java.util.Map;public cla ...

  9. java接口返回map集合数据;前端ajax获取,遍历时无序

    因业务需求,在同一张表格中,将地区.全国业务数据 按年份分组统计,将相同年份的数据组装成一条数据在表格中对比显示.效果图如下: 当前地区 全国 年度 季度 成交额 净利润 成交额 净利润 2019 1 ...

最新文章

  1. Golang反射机制的实现分析——reflect.Type方法查找和调用
  2. jenkins 邮件配置 二 ***
  3. linux c 内存操作函数 简介
  4. C语言程序设计 练习1-13
  5. Android总结 之 AsyncTask(二)
  6. dwmac ethernet driver(stmmac)
  7. 资格赛:题目1:同构
  8. 函数c语言桶排算法,C语言基本排序算法之桶式排序实例
  9. linux (fedora 28) 制作启动U盘,启动盘
  10. Part4:Citrix 3D 技术Step by Step配置指导手册
  11. 前后端分离项目token怎么验证_前后端分离,获取token,验证登陆是否失效
  12. 阿里巴巴开源离线同步工具 DataX3.0 介绍
  13. 23种设计模式之软件设计模式的概念与意义
  14. 心态对了一切都对了 -- Entropy 熵
  15. 【单片机笔记】PWM信号与PPM信号简单理解
  16. 刀塔霸业怎么在电脑上玩 刀塔霸业电脑版玩法教程
  17. C# Message类的属性Msg所关联的消息ID
  18. 全国增值税发票查验平台验证码识别
  19. 分享5个制定市场营销神器
  20. 计算机组成原理实验主存储器,计算机组成原理实验课件--存储器.ppt

热门文章

  1. C语言的单链表求交点
  2. LabelButtonScale
  3. 拾人牙慧篇之———QQ微信的第三方登录实现
  4. Apache转发到Tomcat
  5. 开源:ASP.NET MVC+EF6+Bootstrap开发框架
  6. UIImage图片拉伸方法
  7. Linux内核学习四库全书
  8. 在ASP.NET 2.0中使用样式、主题和皮肤
  9. ADO.NET 2.0 中的架构
  10. PE文件和COFF文件格式分析——RVA和RA相互计算