宗策

导航

Map的遍历

package seday13;


import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
/**
 * @author xingsir
 * Map的遍历
 * 遍历Map有三种方式:
 * 遍历所有的key
 * 遍历所有的key-value对
 * 遍历所有的value(相对不常用)
 */
public class MapDemo2 {

    public static void main(String[] args) {
        Map<String, Integer> map=new HashMap<>();
        map.put("JAVA",99);
        map.put("C#", 98);
        map.put("C++", 97);
        map.put("PYTHON", 96);
        map.put("ORACLE", 99);

        /*
         * Set keySet()将当前Map中所有的key以一个Set集合形式返回
         */
        Set<String> keyset= map.keySet();
        for(String key : keyset) {
            System.out.println("key:"+key);                        
        }
        System.out.println("------------------------------------------------");    
        
        
        /*
         * Set<Entry> entrySet()将当前Map中每一组键值对一个Entry实例形式存放于Set集合后返回
         * 
         * java.util.Map.Entry
         * Entry的每一个实例用于表示Map中的一组键值对
         */
        Set<Entry<String,Integer>> entrySet 
        = map.entrySet();
        for(Entry<String,Integer> entry :entrySet) {
            String key2 = entry.getKey();
            Integer value = entry.getValue();
            System.out.println(key2+":"+value);

        }
        System.out.println("------------------------------------------------");    
        
        /*
         * Collection values()
         * 将当前Map中所有的Value以一个Collection集合的形式返回。之所以没有用Set集合返回,是因为Map中的value是可以重复的。
         */
        Collection<Integer> values = map.values();
        for(Integer value : values) {
            System.out.println("value:"+value);
        }
    }

}

posted on 2020-01-09 11:35  宗策  阅读(555)  评论(0编辑  收藏  举报