学习笔记,仅供参考,有错必纠


Map集合的遍历

方法1(利用键找值)

由于Map集合中没有iterator方法,所以如果我们想要遍历Map,则需要先提取出键,拿到Set集合,再利用Set集合的iterator方法进行遍历,再利用Map集合的get方法得到值。

  • 举个例子
package com.guiyang.bean;import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;public class Demo2_Iterator {public static void main(String[] args) {Map<String, Integer> map = new HashMap<>();map.put("Ada", 21);map.put("Petter", 20);map.put("Jack", 19);map.put("Black", 26);map.put("Jack", 20);/*        Set<String> keySet = map.keySet();Iterator<String> it = keySet.iterator();while (it.hasNext()) {String key = it.next();Integer value = map.get(key);System.out.println(key + " = " + value);}*/for (String string : map.keySet()) {System.out.println(string + " = " + map.get(string));}}
}

输出:

Petter = 20
Black = 26
Jack = 20
Ada = 21

方法2(创建键值对对象)

首选,我们从双列集合中,得到每个键值对对象,并将键值对对象存放在一个单列集合中,最后根据键值对对象获取键和值。

package com.guiyang.bean;import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;public class Demo3_Iterator {public static void main(String[] args) {Map<String, Integer> map = new HashMap<>();map.put("Ada", 21);map.put("Petter", 20);map.put("Jack", 19);map.put("Black", 26);map.put("Jack", 20);/*        Set<Map.Entry<String, Integer>> entrySet = map.entrySet();Iterator<Map.Entry<String, Integer>> iterator = entrySet.iterator();while (iterator.hasNext()) {Map.Entry<String, Integer> entry = iterator.next();String name = entry.getKey();Integer age = entry.getValue();System.out.println(name + " = " + age);}*/for (Map.Entry<String, Integer> entry : map.entrySet()) {System.out.println(entry.getKey() + " = " + entry.getValue());}}
}

输出:

Petter = 20
Black = 26
Jack = 20
Ada = 21

第三次学JAVA再学不好就吃翔(part92)--Map集合的遍历相关推荐

  1. 第三次学JAVA再学不好就吃翔(part107)--字符流的拷贝

    学习笔记,仅供参考,有错必纠 文章目录 IO流 字符流的拷贝 拷贝纯文本文件 注意事项 自定义字符数组的拷贝 IO流 字符流的拷贝 拷贝纯文本文件 zzz.txt: 安徽财经大学 JAVA代码: pa ...

  2. 第三次学JAVA再学不好就吃翔(part91)--Map接口

    学习笔记,仅供参考,有错必纠 Map接口 Map集合概述 Map是java.util包下的一个接口,它将键映射到值的对象,且一个映射不能包含重复的键,每个键最多只能映射一个值. Map接口和Colle ...

  3. 第三次学JAVA再学不好就吃翔(part77)--迭代器遍历

    学习笔记,仅供参考,有错必纠 文章目录 集合 迭代器遍历 Iterator类 Collection类的iterator方法 迭代器原理 举个例子 集合 迭代器遍历 迭代器概述 集合是用来存储元素的,存 ...

  4. 第三次学JAVA再学不好就吃翔(part106)--字符流

    学习笔记,仅供参考,有错必纠 文章目录 IO流 字符流输入流FileReader 字符流是什么 FileReader类构造方法 举个例子 字符流输出流FileWriter FileWriter构造方法 ...

  5. 第三次学JAVA再学不好就吃翔(part46)--Scanner类

    学习笔记,仅供参考 文章目录 Scanner类 Scanner获取数据出现的问题 Scanner类 概述 Scanner是在java.util包下的一个类,使用该类时我们需要导包.这个类被final修 ...

  6. 第三次学JAVA再学不好就吃翔(part117)--单例设计模式

    学习笔记,仅供参考,有错必纠 文章目录 多线程 单例设计模式 饿汉式 懒汉式 第三种格式 Timer类 线程的五种状态 多线程 单例设计模式 单例设计模式,即保证类在内存中只有一个对象,如何保证类在内 ...

  7. 第三次学JAVA再学不好就吃翔(part109)--LineNumberReader类

    学习笔记,仅供参考,有错必纠 IO流 LineNumberReader类 该类继承自java.io.BufferedReader,该类可以跟踪行号的缓冲字符输入流.此类定义了方法 setLineNum ...

  8. 第三次学JAVA再学不好就吃翔(part108)--带缓冲的字符流

    学习笔记,仅供参考,有错必纠 文章目录 IO流 带缓冲的字符流 BufferedReader和BufferedWriter readLine和newLine方法 IO流 带缓冲的字符流 Buffere ...

  9. 第三次学JAVA再学不好就吃翔(part7)--基础语法之运算符

    学习笔记,仅供参考 文章目录 JAVA基础语法 运算符 算数运算符 算术运算符 ++和-- 赋值运算符 关系运算符 JAVA基础语法 运算符 什么是运算符 就是对常量和变量进行操作的符号. 运算符的分 ...

最新文章

  1. autoware使用激光雷达进行目标检测(五)
  2. 对于初学者Python开发难学吗?适合初学者吗?
  3. 阿里青橙奖名单公布,23位院士、2位图灵奖得主推荐
  4. 如何提取cocos iOS应用程序APP与游戏安装包里的资源与文件
  5. int.Parse()和Convert.ToInt32之间的主要区别是什么
  6. Markdown 简明教程
  7. git - 搭建最简单的git server
  8. 微软反垄断案新突破 Win10系统或需剥离可信计算
  9. 人工大脑项目 —— Nengo
  10. 计算机房英语单词,主机房是什么意思
  11. 【广告】我妹妹导演的毕设——数字传媒摄影作品
  12. microsoftsql新建登录用户登录失败_史上最简单的Spring Security教程(九):自定义用户登录失败页面...
  13. python 100题_python 100题
  14. 微软4月补丁星期二修复119个漏洞,含2个0day
  15. 业务异常通用类及全局异常处理
  16. NVIDIA Control Panel 闪退(英伟达控制面板闪退)
  17. 维也纳新生生活指南(2018春季版)
  18. 看似落魄的灵魂登场却如此隆重,风 吹散了平庸 爱漫延没有尽头
  19. Python: 进行one-hot编码
  20. Linux命令之expr详解

热门文章

  1. ValueError: do_handshake_on_connect should not be specified for non-blocking sockets
  2. ubuntu环境下一键切换python的virtualenv虚拟环境
  3. 数学狂想曲(五)——概率分布(2), 自相关互相关卷积
  4. mysql增删改查脚本_脚本方式实现数据库增删改查
  5. 20170822 前端开发日报
  6. hadoop common 与 servlet 3冲突
  7. TianyaDL_4thread天涯帖子下载4线程版
  8. linux线程-sysconf系统变量
  9. Win-Get——Windows下的自由软件自动安装程序
  10. UML模型中的图-静态图【类图、对象图】