Java LinkedHashMap 类

Java.util 包提供了一个 LinkedHashMap 类,它是Map 接口的哈希表和链表实现,具有可预测的迭代顺序。此实现与 HashMap 的不同之处在于,它维护一个贯穿其所有条目的双向链表。该类提供所有可选的 Map 操作,并允许 null 元素。 HashMap 上的迭代可能会更昂贵。

类声明

java.util.LinkedHashMap 类的声明是:

public class LinkedHashMap<K,V>
  extends HashMap<K,V>
    implements Map<K,V> 

这里,K和 V 分别是容器维护的键和值的类型。

类构造函数

序号构造函数和描述
1.LinkedHashMap()
构造一个空的插入顺序 LinkedHashMap 实例,默认初始容量 (16) 和负载因子 (0.75)。
2.LinkedHashMap(int initialCapacity)
使用指定的插入顺序构造一个空的插入顺序 LinkedHashMap 实例初始容量和默认负载系数 (0.75)。
3.LinkedHashMap(int initialCapacity, float loadFactor)
构造一个空的按插入顺序排列的 LinkedHashMap 实例具有指定的初始容量和负载系数。
4.LinkedHashMap(int initialCapacity, float loadFactor, boolean accessOrder)
构造一个空的 LinkedHashMap 实例具有指定的初始容量、负载系数和订购模式。
5.LinkedHashMap(Map<? extends K,? extends V> m)
构造一个插入-与指定映射具有相同映射的有序 LinkedHashMap 实例。

java.util.LinkedHashMap 方法

java.util.LinkedHashMap 类有许多方法,如下所示:

成员方法

序号方法和描述
1.void clear()
从此映射中删除所有映射。
2.boolean containsValue(Object value)
如果此映射将一个或多个键映射到指定值,则返回 true。
3.Set<Map.Entry<K,V>> EntrySet()
返回此映射中包含的映射的集合视图。
4.void forEach(BiConsumer<? super K, ? super V> action)
对此映射中的每个条目执行给定的操作,直到所有条目都已处理完毕或该操作引发异常。
5.V get(Object key)
返回指定键映射到的值,如果此映射不包含该键的映射,则返回 null。
6.V getOrDefault(Object key,V defaultValue )
返回指定键映射到的值,如果此映射不包含该键的映射,则返回 defaultValue。
7.Set<K> keySet()
返回此映射中包含的键的集合视图。
8.protected boolean removeEldestEntry(Map.Entry<K,V> eldest)
如果此映射应删除其最旧的条目,则返回 true。
9.void ReplaceAll(BiFunction<? super K, ? super V,? extends V> function)
用在该条目上调用给定函数的结果替换每个条目的值,直到所有条目都已处理完毕或该函数引发异常。
10。Collection<V> values()
返回此映射中包含的值的集合视图。

继承的方法

该类继承了以下类的方法:

  • java.lang.Object
  • java.util.AbstractMap<K,V>
  • java.util.HashMap<K,V>