Map接口的方法
2021-04-18 本文已影响0人
felixfeijs
Map接口的方法
返回类型 | 方法 | 示意 | 扩展 | 代码示例 |
---|---|---|---|---|
int | size() | 获取map的数量 | - | - |
boolean | isEmpty() | 判断该map是否为空 | - | - |
boolean | containsKey(Object key) | 判断map中是否包含参数key | - | - |
boolean | containsValue(Object value) | 判断map中是否包含值value | - | - |
V | get(Object key) | 根据key获取value | - | - |
V | put(K key, V value) | 添加key和value | key和value可为null,key不可重复,value可重复 | - |
V | remove(Object key) | 删除指定key | - | - |
void | putAll(Map<? extends K, ? extends V> m) | 把参数中的map所有元素添加到该map中去 | - | - |
void | clear() | 清空map | - | - |
Set<K> | keySet() | 获取key的Set集合(Set继承Collection),随后通过迭代器获取key | - | - |
Collection<V> | values() | 把该集合的value放入集合中 | - | - |
Set<Map.Entry<K, V>> | entrySet() | 获取key、value的Set集合,随后通过迭代器获取key、value | - | - |
boolean | equals(Object o) | 比较该map和参数map的值是否相等 | - | - |
int | hashCode() | 获取该map的hashCode | void | void |
default V | getOrDefault(Object key, V defaultValue) | 获取key的值,如果没有该key,则返回defaultValue | - | - |
default void | forEach(BiConsumer<? super K, ? super V> action) | 配合lambda表达式遍历k,v | jdk8lambda表达式 | 代码 |
default void | replaceAll(BiFunction<? super K, ? super V, ? extends V> function) | 根据指定方式替换指定规则的value | - | 代码 |
default V | putIfAbsent(K key, V value) | 如果value不为null则添加进去 | - | - |
default boolean | remove(Object key, Object value) | 移除同时满足key,value相同的值 | - | - |
default boolean | replace(K key, V oldValue, V newValue) | 替换指定key的oldValue为newValue | - | - |
default V | computeIfAbsent(K key,Function<? super K, ? extends V> mappingFunction) | 当key存在时不执行put操作,并返回value,key不存在时进行put操作,返回value | jdk8lambda表达式 | 代码 |
default V | merge(K key, V value,BiFunction<? super V, ? super V, ? extends V> remappingFunction) | 如果key对应的value不存在,则返回value值,如果存在,则返回通过remappingFunction重新计算后的值 | jdk8lambda表达式 | 代码 |