1. 程式人生 > >遍歷Map的方法

遍歷Map的方法

get str 不足 while set entryset keyset entry date

集合在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的方法