Map接口

学习总结20-04-25:Map接口

这是我自己画的简版。Map系的也是集合,但是Map是独立于Collection的。

特点: Map在计算机中有映射的意思

  1. 存储任意键值对
  2. 键:无序,无下标,不予许重复(唯一,有就覆盖)
  3. 值:无序,无下标,允许重复。
Modifier and Type Method and Description
void clear() 从该地图中删除所有的映射(可选操作)。
default V compute(K key, BiFunction remappingFunction) 尝试计算指定键的映射及其当前映射的值(如果没有当前映射, null )。
default V computeIfAbsent(K key, Function mappingFunction) 如果指定的键尚未与值相关联(或映射到 null ),则尝试使用给定的映射函数计算其值,并将其输入到此映射中,除非 null
default V computeIfPresent(K key, BiFunction remappingFunction) 如果指定的**的值存在且非空,则尝试计算给定**及其当前映射值的新映射。
boolean containsKey(Object key) 如果此映射包含指定键的映射,则返回 true
boolean containsValue(Object value) 如果此地图将一个或多个键映射到指定的值,则返回 true
Set> entrySet() 返回此地图中包含的映射的Set视图。
boolean equals(Object o) 将指定的对象与此映射进行比较以获得相等性。
default void forEach(BiConsumer action) 对此映射中的每个条目执行给定的操作,直到所有条目都被处理或操作引发异常。
V get(Object key) 返回到指定键所映射的值,或 null如果此映射包含该键的映射。
default V getOrDefault(Object key, V defaultValue) 返回到指定键所映射的值,或 defaultValue如果此映射包含该键的映射。
int hashCode() 返回此地图的哈希码值。
boolean isEmpty() 如果此地图不包含键值映射,则返回 true
Set keySet() 返回此地图中包含的键的Set视图。
default V merge(K key, V value, BiFunction remappingFunction) 如果指定的键尚未与值相关联或与null相关联,则将其与给定的非空值相关联。
V put(K key, V value) 将指定的值与该映射中的指定键相关联(可选操作)。
void putAll(Map m) 将指定地图的所有映射复制到此映射(可选操作)。
default V putIfAbsent(K key, V value) 如果指定的键尚未与某个值相关联(或映射到 null )将其与给定值相关联并返回 null ,否则返回当前值。
V remove(Object key) 如果存在(从可选的操作),从该地图中删除一个键的映射。
default boolean remove(Object key, Object value) 仅当指定的**当前映射到指定的值时删除该条目。
default V replace(K key, V value) 只有当目标映射到某个值时,才能替换指定键的条目。
default boolean replace(K key, V oldValue, V newValue) 仅当当前映射到指定的值时,才能替换指定键的条目。
default void replaceAll(BiFunction function) 将每个条目的值替换为对该条目调用给定函数的结果,直到所有条目都被处理或该函数抛出异常。
int size() 返回此地图中键值映射的数量。
Collection values() 返回此地图中包含的值的Collection视图。

这就是API中Map的全部方法。

基本的存取:

  1. 存:put();不是add()了,Map系是put(),Collcetion是add();

  2. 取:get(); 通过K,获取V

  3. 判断是否包含:

    1. boolean containsKey(Object key)
    2. boolean containsValue(Object value)
  4. 获取全部Key: Set keySet()

  5. 获取全部Value: Collection values()

  6. 获取全部键值对:Set<Map.Entry<K,V>> entrySet()

PS:4,5,6方法后面HashMap再详细说

相关文章:

  • 2021-10-21
  • 2021-08-10
  • 2021-09-28
  • 2022-12-23
  • 2021-10-28
  • 2021-07-09
  • 2022-02-08
  • 2021-07-08
猜你喜欢
  • 2021-08-02
  • 2021-09-06
  • 2021-05-20
  • 2021-11-07
  • 2022-12-23
  • 2021-05-24
  • 2022-12-23
相关资源
相似解决方案