Java LinkedHashMap 类

2025年4月1日 | 3 分钟阅读
Java LinkedHashMap class hierarchy

Java LinkedHashMap 类是 Map 接口的 Hashtable 和链表实现,具有可预测的迭代顺序。它继承自 HashMap 类并实现了 Map 接口。

注意事项

  • Java LinkedHashMap 根据键包含值。
  • Java LinkedHashMap 包含唯一的元素。
  • Java LinkedHashMap 可以有一个 null 键和多个 null 值。
  • Java LinkedHashMap 是非同步的。
  • Java LinkedHashMap 保持插入顺序。
  • Java HashMap 类的初始默认容量为 16,负载因子为 0.75。

LinkedHashMap 类声明

让我们看看 java.util.LinkedHashMap 类的声明。

LinkedHashMap 类参数

让我们看看 java.util.LinkedHashMap 类的参数。

  • K: 此映射维护的键的类型。
  • V: 映射值的类型。

Java LinkedHashMap 类的构造函数

构造函数描述
LinkedHashMap()它用于构造一个默认的 LinkedHashMap。
LinkedHashMap(int capacity)它用于使用给定的容量初始化一个 LinkedHashMap。
LinkedHashMap(int capacity, float loadFactor)它用于初始化容量和负载因子。
LinkedHashMap(int capacity, float loadFactor, boolean accessOrder)它用于初始化容量和负载因子以及指定的排序模式。
LinkedHashMap(Map<? extends K,? extends V> m)它用于使用给定 Map 类 m 中的元素初始化 LinkedHashMap。

Java LinkedHashMap 类的方法

方法描述
V get(Object key)它返回指定键映射到的值。
void clear()它从映射中移除所有键值对。
boolean containsValue(Object value)如果映射将一个或多个键映射到指定值,则返回 true。
Set<Map.Entry<K,V>> entrySet()它返回映射中包含的映射的 Set 视图。
void forEach(BiConsumer<? super K,? super V> action)对 Map 中的每个条目执行给定的操作,直到所有条目都被处理完毕或操作抛出异常。
V getOrDefault(Object key, V defaultValue)它返回指定键映射到的值,如果此映射不包含该键的映射,则返回 defaultValue。
Set<K> keySet()它返回映射中包含的键的 Set 视图
protected boolean removeEldestEntry(Map.Entry<K,V> eldest)它在移除最旧的条目时返回 true。
void replaceAll(BiFunction<? super K,? super V,? extends V> function)通过调用给定的函数来替换每个条目的值,直到所有条目都被处理完毕或函数抛出异常。
Collection<V> values()它返回此映射中包含的值的 Collection 视图。

Java LinkedHashMap 示例

示例

编译并运行

输出

100 Amit
       101 Vijay
       102 Rahul

Java LinkedHashMap 示例:键值对

示例

编译并运行

输出

Keys: [100, 101, 102]
Values: [Amit, Vijay, Rahul]
Key-Value pairs: [100=Amit, 101=Vijay, 102=Rahul]

Java LinkedHashMap 示例:remove()

示例

编译并运行

输出

Before invoking remove() method: {101=Amit, 102=Vijay, 103=Rahul}
After invoking remove() method: {101=Amit, 103=Rahul}

Java LinkedHashMap 示例:Book

示例

编译并运行

输出

2 Details:
102 Data Communications & Networking Forouzan Mc Graw Hill 4
1 Details:
101 Let us C Yashwant Kanetkar BPB 8
3 Details:
103 Operating System Galvin Wiley 6

下一个主题Java TreeMap 类