天天看点

Java基础知识:java.util.Map集合java.util.Map集合

java.util.Map集合

1. Map集合

  • 将键映射到值的对象集合称为Map集合。一个映射不能包含重复的键,每个键最多只能映射到一个值

2. 常用功能

  • 添加功能
    • Object put(K key, V value):添加元素。如果键第一次存储,直接存储返回null,如果不是第一次存储,替换以前的值,返回旧值
  • 删除功能
    • void clear():移除所有键值对元素
    • V remove(Object obj):根据键删除值,并返回旧值
  • 判断功能
    • boolean containsKey(Object obj):判断是否包含键
    • boolean containsValue(Object obj):判断是否包含值
  • 获取功能
    • V get(Object obj):根据键获取值,并返回值
    • set keySet():获取集合中所有键的集合
    • Collection Values:获取集合中所有值得集合

3. 常见子类

  • HashMap
    • 基于哈希表的Map接口实现,保证键的唯一性
    • 保证唯一必须覆盖底层的HashCode()和equals()方法
  • LinkedHashMap
    • 是Map接口的哈希表和链接列表实现,具有可预知的迭代顺序
  • TreeMap
    • 基于红黑相对的Map接口实现,保证键的唯一和有序

4、Collections工具类

  • 针对集合进行操作的工具类,都是静态方法

4.1 常用方法

  • static void sort(List list):排序(自然排序)
  • public static T max(Collectionn

5、集合的选择

  • 是否为键值对对象形式:
    • 是:Map
      • 键是否需要排序:
        • 是:TreeMap
        • 否:HashMap
      • 不知道是否要排序就用HashMap
    • 否:Collection
      • 元素是否唯一:
        • 是:Set
          • 是否要排序:
            • 是:TreeSet
            • 否:HashSet
        • 否:List
          • 是否安全:
            • 是:Vector
            • 否:ArrayList、LinkedList