1. 程式人生 > >遍歷map集合的方法,值得收藏一下

遍歷map集合的方法,值得收藏一下

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
 
public class MapTest {
    public static void main(String[] args) {
        Map<Integer, String> map = new HashMap<>();
        //map集合存入資料
        map.put(1, "第一個value");
        map.put(2, "第二個value");
        map.put(3, "第三個value");
        
        //通過keySet取出map資料[for-each迴圈]
        System.out.println("-------[for-each迴圈遍歷]通過keySet取出map資料-------");
        Set<Integer> keys = map.keySet();   //此行可省略,直接將map.keySet()寫在for-each迴圈的條件中
        for(Integer key:keys){
            System.out.println("key值:"+key+" value值:"+map.get(key));
        }
        
        //通過EntrySet取出map資料[for-each迴圈]
        System.out.println("-------[for-each迴圈遍歷]通過EntrySet取出map資料-------");
        Set<Entry<Integer, String>> entrys = map.entrySet();  //此行可省略,直接將map.entrySet()寫在for-each迴圈的條件中
        for(Entry<Integer, String> entry:entrys){
            System.out.println("key值:"+entry.getKey()+" value值:"+entry.getValue());
        }
        
        //通過keySet取出map資料[Iterator遍歷]
        System.out.println("-------[Iterator迴圈遍歷]通過keySet取出map資料---------");
        Iterator<Integer> it = map.keySet().iterator();  //map.keySet()得到的是set集合,可以使用迭代器遍歷
        while(it.hasNext()){
            Integer key = it.next();
            System.out.println("key值:"+key+" value值:"+map.get(key));
        }
        
        //通過EntrySet取出map資料[Iterator遍歷]
        System.out.println("-------[Iterator迴圈遍歷]通過EntrySet取出map資料---------");            
        Iterator<Entry<Integer, String>> iterator = map.entrySet().iterator();  //map.entrySet()得到的是set集合,可以使用迭代器遍歷
        while(iterator.hasNext()){
            Entry<Integer, String> entry = iterator.next();
            System.out.println("key值:"+entry.getKey()+" value值:"+entry.getValue());
        }
    }    
}