map集合是以键值对进行存储值的,所以遍历map集合无非就是获取键和值,根据实际需求,进行获取键和值.

1.无非就是通过map.keySet()获取到值,然后根据键获取到值.

  1.   for(String s:map.keySet()){
  2. System.out.println("key : "+s+" value : "+map.get(s));
  3. }

2.通过Map.Entry(String,String)获取,然后使用entry.getKey()获取到键,通过entry.getValue()获取到值

  1. for(Map.Entry<String, String> entry : map.entrySet()){
  2. System.out.println("键 key :"+entry.getKey()+" 值value :"+entry.getValue());
  3. }

3.其中通过Iterator也是为了最终获得entry,所以理解其用法,可以很好的使用和掌握

  1. public class MapTest01 {
  2. 13
  3. 14 public static void main(String[] args) {
  4. 15 Map<String, String> map=new HashMap<String, String>();
  5. 16 map.put("张三1", "男");
  6. 17 map.put("张三2", "男");
  7. 18 map.put("张三3", "男");
  8. 19 map.put("张三4", "男");
  9. 20 map.put("张三5", "男");
  10. 21
  11. 22 //第一种遍历map的方法,通过加强for循环map.keySet(),然后通过键key获取到value值
  12. 23 for(String s:map.keySet()){
  13. 24 System.out.println("key : "+s+" value : "+map.get(s));
  14. 25 }
  15. 26 System.out.println("====================================");
  16. 27
  17. 28 //第二种只遍历键或者值,通过加强for循环
  18. 29 for(String s1:map.keySet()){//遍历map的键
  19. 30 System.out.println("键key :"+s1);
  20. 31 }
  21. 32 for(String s2:map.values()){//遍历map的值
  22. 33 System.out.println("值value :"+s2);
  23. 34 }
  24. 35 System.out.println("====================================");
  25. 36
  26. 37 //第三种方式Map.Entry<String, String>的加强for循环遍历输出键key和值value
  27. 38 for(Map.Entry<String, String> entry : map.entrySet()){
  28. 39 System.out.println("键 key :"+entry.getKey()+" 值value :"+entry.getValue());
  29. 40 }
  30. 41 System.out.println("====================================");
  31. 42
  32. 43 //第四种Iterator遍历获取,然后获取到Map.Entry<String, String>,再得到getKey()和getValue()
  33. 44 Iterator<Map.Entry<String, String>> it=map.entrySet().iterator();
  34. 45 while(it.hasNext()){
  35. 46 Map.Entry<String, String> entry=it.next();
  36. 47 System.out.println("键key :"+entry.getKey()+" value :"+entry.getValue());
  37. 48 }
  38. 49 System.out.println("====================================");
  39. 50
  40. 51 }
  41. 52
  42. 53
  43. 54 }

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

  1. public class MapTest02 {
  2. 14
  3. 15 public static void main(String[] args) {
  4. 16 //1:key,value都是object类型的
  5. 17 //2:key必须是唯一的,不唯一,那么后面的value会把前面的value覆盖
  6. 18 //3:对于HashMap,key可以为空
  7. 19 //4:value可以为空,也可以为空
  8. 20 //5:HashTable的key和value不能为空
  9. 21 //6:properties的key和value必须为String类型的
  10. 22 Map<String , String> map=new HashMap<>();
  11. 23 map.put("null", "this is null 1");
  12. 24 map.put("null", "this is null 2");
  13. 25 System.out.println(map.size());
  14. 26 System.out.println(map.get(null));
  15. 27
  16. 28 System.out.println("=============================");
  17. 29 //循环显示map类型的key以及对应的value
  18. 30 //三个集合,key的集合,value的集合,键值对的集合
  19. 31 Set<String> keys=map.keySet();
  20. 32 for(String s:keys){
  21. 33 System.out.println(s);
  22. 34 }
  23. 35 System.out.println("=============================");
  24. 36 Collection<String> values=map.values();//值的集合
  25. 37 System.out.println(values);
  26. 38 System.out.println("=============================");
  27. 39 Set<Map.Entry<String, String>> entrys=map.entrySet();//键值对的集合
  28. 40 for(Map.Entry<String, String> entry:entrys){
  29. 41 System.out.println(entry.getKey()+" "+entry.getValue());
  30. 42 }
  31. 43
  32. 44 }
  33. 45 }

用来遍历map集合的方法的更多相关文章

  1. Java 遍历Map集合的方法

    方法一:通过Map.keySet,遍历key和value Map<String, Object> map = new HashMap<>(); for (String key ...

  2. 遍历Map集合的方法

    创建一个MAP的栗子: Map<String, Integer> tempMap = new HashMap<String, Integer>(); tempMap.put(& ...

  3. 遍历Map集合四中方法

    public static void main(String[] args) { Map<String, String> map = new HashMap<String, Stri ...

  4. 遍历Map集合:java.util.Map.Entry、KeySet两种方式

    遍历Map集合的两种方式: 1.用KeySet Map.keySet(),返回一个存放所有key的set集合,通过遍历集合,根据key值取出所有的value值. Map<String,Strin ...

  5. (1)集合 ---遍历map集合

    Map接口     实现Map接口的类用来存储键(key)-值(value) 对.Map 接口的实现类有HashMap和TreeMap等.Map类中存储的键-值对通过键来标识,所以键值不能重复. Ha ...

  6. Java之五种遍历Map集合的方式

    摘要:在java中所有的map都实现了Map接口,因此所有的Map都可以用以下的方式去遍历. 在java中所有的map都实现了Map接口,因此所有的Map都可以用以下的方式去遍历.这篇文章主要给大家介 ...

  7. 键盘录入一个文件夹路径,统计该文件夹(包含子文件夹)中每种类型的文件及个数,注意:用文件类型(后缀名,不包含.(点),如:"java","txt")作为key, 用个数作为value,放入到map集合中,遍历map集合

    package cn.it.zuoye5; import java.io.File;import java.util.HashMap;import java.util.Iterator;import ...

  8. 遍历Map集合的几种方式

    import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Map.Entr ...

  9. 遍历Map集合的四中方法

    ->有这样一个Map集合 Map<String, String> map = new HashMap<String, String>(); map.put(", ...

随机推荐

  1. 十篇TED点击率最高演讲,带你重新认识大数据与人工智能

    我们通常过于专注于机器学习算法的实现,倾向于忽略这种技术本身的一些重要问题:如未来的应用和政治后果.在这篇文章中,我们从非常受欢迎的非营利组织TED上收集了一系列的视频(并非关注于选择什么语言或算法来 ...

  2. Java多线程概念及优缺点,多线程的地位|乐字节

    大家好,乐字节小乐有来咯,上次说完了Java网络编程探究|乐字节,这次我们来看看线程相关的吧. Java线程主要讲述的内容有: 1.线程概念 多线程,说白了就是多条执行路径,原来是一条路径,就主路径( ...

  3. 《ucore lab7》实验报告

    资源 ucore在线实验指导书 我的ucore实验代码 练习1: 理解内核级信号量的实现和基于内核级信号量的哲学家就餐问题(不需要编码) 题目 完成练习0后,建议大家比较一下(可用meld等文件dif ...

  4. ZooKeeper 相关问题

    [为什么部署个数是奇数个?] zookeeper有这样一个特性:集群中只要有过半的机器是正常工作的,那么整个集群对外就是可用的.即 2n 个机器的集群,最多可以容忍 n-1 个机器不可用,这个容忍度与 ...

  5. Java的设计模式(7)— 生产者-消费者模式

    生产者-消费者模式是一个经典的多线程设计模式,它为多线程间的协作提供了良好的解决方案.这个模式中,通常有两类线程,即若干个生产者线程和若干个消费者线程.生产者线程负责提交用户请求,消费者线程则负责具体 ...

  6. 给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a、b文件共同的url?

    package com.hadoop.hdfs; import org.apache.hadoop.yarn.webapp.hamlet.Hamlet; import org.junit.Test; ...

  7. C++11<functional>深度剖析:背景、原理、接口与实现

    自C++11以来,C++标准每3年修订一次.C++14/17都可以说是更完整的C++11:即将到来的C++20也已经特性完整了. C++11已经有好几年了,它的年龄比我接触C++的时间要长10倍不止吧 ...

  8. 机器学习-EM算法-GMM模型笔记

    GMM即高斯混合模型,下面根据EM模型从理论公式推导GMM: 随机变量X是有K个高斯分布混合而成,取各个高斯分布的概率为φ1,φ2,... ,φK,第i个高斯分布的均值为μi,方差为Σi.若观测到随机 ...

  9. Scala 面向对象编程之继承

    extends关键字 // Scala中,让子类继承父类,与Java一样,也是使用extends关键字 // 继承就代表,子类可以从父类继承父类的field和method:然后子类可以在自己内部放入父 ...

  10. hdu1501 记忆化搜索。。。

    Problem Description Given three strings, you are to determine whether the third string can be formed ...