遍历Map的方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了遍历Map的方法相关的知识,希望对你有一定的参考价值。

集合在Java开发中的使用率还是比较高的,下面我们谈一谈如何遍历集合中的Map。

笔者写这篇文章前也百度了网上其他博主的文章,说是有四种五种这么多,笔者仔细看了代码后发现,其实主要也就两种罢了:

1.使用entrySet()方法得到Entry对象的集合,其中一个Entry对象中包含了一个key和对应的value,再遍历Entry就可以了;

2.使用keySet()方法得到key的集合,再通过遍历key获取value。

下面是代码:

 1 import java.util.HashMap;
 2 import java.util.Iterator;
 3 import java.util.Map;
 4 import java.util.Set;
 5 
 6 /**
 7  * @author Dong
 8  * @date 创建时间:2017年5月22日 下午2:35:08
 9  */
10 public class MyMap {
11     private Map<String, String> map;
12 
13     public MyMap() {
14         map = new HashMap<String, String>();
15         map.put("name", "张三");
16         map.put("gender", "男");
17         map.put("age", "25");
18         map.put("from", "海南");
19         map.put("university", "海南大学");
20     }
21 
22     /**
23      * @TODO 遍历map的第一种方法:entrySet(),用iterator或者for-each都行
24      */
25     public void getMapByEntrySet(Map<String, String> map) {
26         for (Map.Entry<String, String> entry : map.entrySet()) {
27             String key = entry.getKey();
28             String value = entry.getValue();
29             System.out.println(key + ":" + value);
30         }
31     }
32 
33     /**
34      * @TODO 遍历的第二种方法:keySet(),用iterator或者for-each都行
35      */
36     public void getMapByKeySet(Map<String, String> map) {
37         Set<String> keySet = map.keySet();
38         // 获取value的方法
39         // Collection<String> value = map.values();
40         Iterator<String> iterator = keySet.iterator();
41         while (iterator.hasNext()) {
42             String key = iterator.next();
43             System.out.println(key + ":" + map.get(key));
44         }
45     }
46 
47     public static void main(String[] args) {
48         MyMap myMap = new MyMap();
49         System.out.println("-----------用entrySet()遍历-----------");
50         myMap.getMapByEntrySet(myMap.map);
51         System.out.println("-----------用keySet()遍历-----------");
52         myMap.getMapByKeySet(myMap.map);
53     }
54 
55 }

以上仅代表个人观点,如有不足,欢迎指正。

以上是关于遍历Map的方法的主要内容,如果未能解决你的问题,请参考以下文章

velocity两种map遍历方法

map遍历方法

map的遍历方法 map.entrySet()

遍历Map的方法

java Map 怎么遍历

关于List和Map的遍历方法