Interface | Description |
---|---|
ForestMap<K,V> |
基于多个
TreeEntry 构成的、彼此平行的树结构构成的森林集合。 |
TreeEntry<K,V> |
允许拥有一个父节点与多个子节点的
Map.Entry 实现,
表示一个以key作为唯一标识,并且可以挂载一个对应值的树节点,
提供一些基于该节点对其所在树结构进行访问的方法 |
Class | Description |
---|---|
AbsEntry<K,V> | |
BiMap<K,V> |
双向Map
互换键值对不检查值是否有重复,如果有则后加入的元素替换先加入的元素 值的顺序在HashMap中不确定,所以谁覆盖谁也不确定,在有序的Map中按照先后顺序覆盖,保留最后的值 它与TableMap的区别是,BiMap维护两个Map实现高效的正向和反向查找 |
CamelCaseLinkedMap<K,V> |
驼峰Key风格的LinkedHashMap
对KEY转换为驼峰,get("int_value")和get("intValue")获得的值相同,put进入的值也会被覆盖 |
CamelCaseMap<K,V> |
驼峰Key风格的Map
对KEY转换为驼峰,get("int_value")和get("intValue")获得的值相同,put进入的值也会被覆盖 |
CaseInsensitiveLinkedMap<K,V> |
忽略大小写的LinkedHashMap
对KEY忽略大小写,get("Value")和get("value")获得的值相同,put进入的值也会被覆盖 |
CaseInsensitiveMap<K,V> |
忽略大小写的Map
对KEY忽略大小写,get("Value")和get("value")获得的值相同,put进入的值也会被覆盖 |
CaseInsensitiveTreeMap<K,V> |
忽略大小写的
TreeMap 对KEY忽略大小写,get("Value")和get("value")获得的值相同,put进入的值也会被覆盖 |
CustomKeyMap<K,V> |
自定义键的Map,默认HashMap实现
|
FixedLinkedHashMap<K,V> | |
FuncKeyMap<K,V> |
自定义函数Key风格的Map
|
FuncMap<K,V> |
自定义键值函数风格的Map
|
LinkedForestMap<K,V> |
ForestMap 的基本实现。 |
LinkedForestMap.EntryNodeWrapper<K,V,N extends TreeEntry<K,V>> |
Map.Entry 包装类 |
LinkedForestMap.TreeEntryNode<K,V> |
树节点
|
MapBuilder<K,V> |
Map创建类
|
MapProxy |
Map代理,提供各种getXXX方法,并提供默认值支持
|
MapUtil |
Map相关工具类
|
MapWrapper<K,V> |
Map包装类,通过包装一个已有Map实现特定功能。
|
ReferenceConcurrentMap<K,V> |
线程安全的ReferenceMap实现
参考:jdk.management.resource.internal.WeakKeyConcurrentHashMap |
SafeConcurrentHashMap<K,V> |
安全的ConcurrentHashMap实现
此类用于解决在JDK8中调用 ConcurrentHashMap.computeIfAbsent(Object, Function) 可能造成的死循环问题。 |
TableMap<K,V> |
可重复键和值的Map
通过键值单独建立List方式,使键值对一一对应,实现正向和反向两种查找 无论是正向还是反向,都是遍历列表查找过程,相比标准的HashMap要慢,数据越多越慢 |
TolerantMap<K,V> |
一个可以提供默认值的Map
|
TransMap<K,V> | |
WeakConcurrentMap<K,V> |
线程安全的WeakMap实现
参考:jdk.management.resource.internal.WeakKeyConcurrentHashMap |
Copyright © 2024. All rights reserved.