Java_总结十九(Map 集合类的三种遍历方式)

Map 集合类的三种遍历方式

import java.util.Collection;
import java.util.HashMap;
import java.util.Map.Entry;
import java.util.Set;
/**
 * 键不允许重复
 * 值允许重复
 * @author Administrator
 *
 */
public class Test {

    public static void main(String[] args) {
        HashMap<String, String> map = new HashMap<>();
        map.put("a", "aa");
        map.put("z", "azza");
        map.put("b", "bb");
        map.put("b", "cc");// 如果键相同,新值覆盖旧值
        System.out.println(map);
        
        HashMap<String, String> m =new HashMap<>();
        m.put("c", "aa");
        m.put("b", "dd");
        
        map.putAll(m);
        System.out.println(map);
        
        // 是否包含指定的键
        System.out.println(map.containsKey("a"));
        // 是否包含指定的值
        System.out.println(map.containsValue("aa"));
        // 根据指定的键 删除集合中的  映射关系
        map.remove("a");
        System.out.println(map);
        
        
        // 遍历 map集合
        /**
         * Set<Map.Entry<K,V>> entrySet()  
         *  Set<K> keySet() 将map集合中的所有的键 放到了一个 set集合中
                  返回此映射 
               V get(Object key) 
                  返回指定键所映射
              Collection<V> values()  
         */
        // 第一种遍历map集合的方法   将所有的键放到set集合中
        Set<String> set = map.keySet();
        for (String key : set) {
            String value = map.get(key);// 通过指定的键得到对应的value
            System.out.println(key+"="+value);
        }
        
        // 第二种遍历方式     values
        Collection<String> collection = map.values();// 将所有的值放到了  Collection集合中
        for (String value : collection) {
            System.out.println(value);
        }
        // 第三种遍历方式     得到了一个 装有很多个  Entry映射项的对象
        Set<Entry<String, String>> set2 = map.entrySet();
        for (Entry<String, String> entry : set2) {
            System.out.println(entry);
            System.out.println(entry.getKey());// 从映射项中拿键
            System.out.println(entry.getValue());// 从映射项中拿值
        }
        
    }
}

 

posted @ 2017-05-15 20:57  Java_皮卡丘漏电  阅读(123)  评论(0编辑  收藏  举报