Day13 Java基础学习笔记

Map接口和Collection接口的不同

* Map是双列的,Collection是单列的
* Map的键唯一,Collection的子体系Set是唯一的
* Map集合的数据结构值针对键有效,跟值无关;Collection集合的数据结构是针对元素有效

Map集合的功能概述

  • A:Map集合的功能概述
    • a:添加功能
      • V put(K key,V value):添加元素。
        • 如果键是第一次存储,就直接存储元素,返回null
        • 如果键不是第一次存在,就用值把以前的值替换掉,返回以前的值
    • b:删除功能
      • void clear():移除所有的键值对元素
      • V remove(Object key):根据键删除键值对元素,并把值返回
    • c:判断功能
      • boolean containsKey(Object key):判断集合是否包含指定的键
      • boolean containsValue(Object value):判断集合是否包含指定的值
      • boolean isEmpty():判断集合是否为空
    • d:获取功能
      • Set<Map.Entry<K,V>> entrySet():
      • V get(Object key):根据键获取值
      • Set keySet():获取集合中所有键的集合
      • Collection values():获取集合中所有值的集合
    • e:长度功能
      • int size():返回集合中的键值对的个数

Map集合的四种遍历方法

利用Entry方法遍历

    Map<String,String> map = new HashMap<>();

    /**
     * Entry方法,常用高效率
     */
    for (Map.Entry<String, String> entry : map.entrySet()) {
        System.out.println("key="+entry.getKey()+"--"+"value="+entry.getValue());
    }

单独获取key与value

    Map<String,String> map = new HashMap<>();
    /**
     * 单独获取key与value
     */
    for (String key : map.keySet()) {
        System.out.println("key="+key);
    }
    for (String value : map.values()) {
        System.out.println("value"+value);
    }

利用迭代器对集合进行遍历,此方法使用于对元素删减

    Map<String,String> map = new HashMap<>();
    Iterator<Entry<String, String>> iterator = map.entrySet().iterator();
    while(iterator.hasNext()){
        Entry<String, String> next = iterator.next();
        System.out.println("key="+next.getKey()+"--"+"value="+next.getValue());
    }

先获取key值,在通过key值获取value

    Map<String,String> map = new HashMap<>();
    for (String key : map.keySet()) {
        String value = map.get(key);
        System.out.println("key="+key+"--"+"value="+value);
    }
posted @ 2017-04-22 15:30  余生Xy  阅读(82)  评论(0编辑  收藏  举报