Map集合迭代的兩種方法

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);
        }
        
    }

}
相關文章
相關標籤/搜索