import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Set; public class Map_He { /** * Map<k,v>:將鍵映射到值的對象。一個映射不能包含重複的鍵,每一個鍵最多隻能映射到一個值 * k - 映射鍵的類型 v - 映射值的類型 */ public static void main(String[] args) { /** * 迭代map集合方法一:keySet() */ //建立Map集合,並添加元素 Map<Integer,String> map = new HashMap<Integer,String>(); map.put(1, "薇恩"); map.put(2, "寒冰"); map.put(3, "奧巴馬"); map.put(4, "盲僧"); map.put(5, "提莫"); //獲取Map集合中的全部鍵的Set集合 Set<Integer> keySet = map.keySet(); //根據Set集合獲取迭代器(Iterator) Iterator<Integer> it = keySet.iterator(); while(it.hasNext()){ //聲明Integer類型變量接收 鍵(K) 值 Integer i = it.next(); //聲明String類型變量,經過map.get()方法獲取值(V) String s = map.get(i); //最後輸出打印 System.out.println(i+" "+s); } /** * 迭代map集合方法二:entrySet(),此方法返回一個Map.Entry實例化後的對象集 */ //獲取map集合的 鍵(K) 和 值(V)的映射關係的 Set 視圖 Set<Map.Entry<Integer, String>> entry = map.entrySet(); Iterator<Map.Entry<Integer,String>> ite = entry.iterator(); while(ite.hasNext()){ //將鍵值關係取出存入Map.Entry這個映射關係集合接口中 Map.Entry<Integer, String> me = ite.next(); //經過Map.Entry中的方法獲取鍵和值 Integer k = me.getKey(); String v = me.getValue(); System.out.println(k+" "+v); } } }