java.util.Map

package java.util;

简介

An object that maps keys to values. A map cannot contain duplicate keys; each key can map to at most one value.

结构

查询操作

// Query Operations
int size();
boolean isEmpty();
boolean containsKey(Object key);
boolean containsValue(Object value);
V get(Object key);

修改操作

// Modification Operations
V put(K key, V value);
V remove(Object key);

批量操作

// Bulk Operations
void putAll(Map<? extends K, ? extends V> m);
void clear();

查看方法

// Views
Set<K> keySet();
Collection<V> values();
Set<Map.Entry<K, V>> entrySet();

内部类 Entry

K getKey();
V getValue();
V setValue(V value);

比较和哈希

参考文章:
JAVA泛型知识(二)--> <? extends T>和<? super T>
JAVA8的java.util.function包

// Comparison and hashing
boolean equals(Object o);
int hashCode();
boolean equals(Object o);
int hashCode();
public static <K extends Comparable<? super K>, V> Comparator<Map.Entry<K,V>> comparingByKey();
public static <K, V extends Comparable<? super V>> Comparator<Map.Entry<K,V>> comparingByValue();
public static <K, V> Comparator<Map.Entry<K, V>> comparingByKey(Comparator<? super K> cmp);
public static <K, V> Comparator<Map.Entry<K, V>> comparingByValue(Comparator<? super V> cmp);

默认方法

参考文章:
java接口中的default方法

// Defaultable methods
default V getOrDefault(Object key, V defaultValue);
default void forEach(BiConsumer<? super K, ? super V> action);
default void replaceAll(BiFunction<? super K, ? super V, ? extends V> function);
default V putIfAbsent(K key, V value);
default boolean remove(Object key, Object value);
default boolean replace(K key, V oldValue, V newValue);
default V replace(K key, V value)
default V computeIfAbsent(K key,
            Function<? super K, ? extends V> mappingFunction);
default V computeIfPresent(K key,
            BiFunction<? super K, ? super V, ? extends V> remappingFunction);
default V computeIfPresent(K key,
            BiFunction<? super K, ? super V, ? extends V> remappingFunction);
default V compute(K key,
            BiFunction<? super K, ? super V, ? extends V> remappingFunction);
default V merge(K key, V value,
            BiFunction<? super V, ? super V, ? extends V> remappingFunction)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Map 今天的主要内容 Map接口概述 Map集合的两种遍历方式通过键找值keySet通过键值对对象获取键和值涉及...
    须臾之北阅读 2,087评论 0 0
  • rljs by sennchi Timeline of History Part One The Cognitiv...
    sennchi阅读 12,196评论 0 10
  • pyspark.sql模块 模块上下文 Spark SQL和DataFrames的重要类: pyspark.sql...
    mpro阅读 13,229评论 0 13
  • 数组与链表在处理数据时各有优缺点,数组查询速度很快而插入很慢,链表在插入时表现优秀但查询无力。哈希表则整合了数组与...
    大大纸飞机阅读 6,831评论 3 6
  • 1、昨天,未经孩子允许,孩子爸给娃养的水草撒了把海盐,今天早上在单位接到孩子电话,水草有好多都从水草泥里出来,漂在...
    淡然_3e57阅读 3,034评论 0 1

友情链接更多精彩内容