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>