map迭代的四種方式


 1 package com.hungteshun;
 2  
 3 import java.util.HashMap;
 4 import java.util.Iterator;
 5 import java.util.Map;
 6  
 7 /**
 8  * @author hungteshun
 9  * @description:
10  * @date 2018/11/12 17:53
11  */
12 public class TestMap {
13     public static void main(String[] args) {
14         Map<Integer, String> map = new HashMap<>();
15         map.put(1, "張三");
16         map.put(2, "李四");
17         map.put(3, "王五");
18         map.put(4, "王五");
19         map.put(4, "王五");
20         System.out.println("map的大小:" + map.size());
21  
22         System.out.println();
23         System.out.println("方式一:通過Map.keySet遍歷key和value:");
24         for (Integer key : map.keySet()) {
25             String s = map.get(key);
26             System.out.println(key + ": " + s);
27         }
28         System.out.println();
29  
30         System.out.println("方式二:通過Map.entrySet遍歷key和value:");
31         System.out.println("推薦,尤其是容量大時");
32         for (Map.Entry<Integer, String> entry : map.entrySet()) {
33             System.out.println(entry.getKey() + ": " + entry.getValue());
34         }
35         System.out.println();
36  
37         System.out.println("方式三:通過Map.entrySet使用iterator遍歷key和value:");
38         Iterator<Map.Entry<Integer, String>> iterator = map.entrySet().iterator();
39         while (iterator.hasNext()) {
40             Map.Entry<Integer, String> entry = iterator.next();
41             System.out.println(entry.getKey() + ": " + entry.getValue());
42         }
43         System.out.println();
44  
45         System.out.println("方式四:通過Map.values()遍歷所有的value,但不能遍歷key");
46         for (String value : map.values()) {
47             System.out.println(value);
48         }
49     }
50 }

運行結果:

 1 map的大小:4
 2  
 3 方式一:通過Map.keySet遍歷key和value:
 4 1: 張三
 5 2: 李四
 6 3: 王五
 7 4: 王五
 8  
 9 方式二:通過Map.entrySet遍歷key和value:
10 推薦,尤其是容量大時
11 1: 張三
12 2: 李四
13 3: 王五
14 4: 王五
15  
16 方式三:通過Map.entrySet使用iterator遍歷key和value:
17 1: 張三
18 2: 李四
19 3: 王五
20 4: 王五
21  
22 方式四:通過Map.values()遍歷所有的value,但不能遍歷key
23 張三
24 李四
25 王五
26 王五

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2024 CODEPRJ.COM