Java集合类汇总记录--guava篇
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Java集合类汇总记录--guava篇,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1911字,纯文字阅读大概需要3分钟。
内容图文
BiMap
HashBiMap<K,V>
实现了两份哈希表数据结构(本类独立实现)。分别负责两个方向的映射。
EnumBiMap<K,V>
两个EnumMap对象分别负责两个方向的映射。
EnumHashBiMap<K,V>
一个EnumMap对象负责K到V映射,一个HashMap对象负责V到K的影身。
MultiMap
HashMultimap<K,V>
使用HashMap<K,HashSet<V>>对象实现。
TreeMultimap<K,V>
使用TreeMap<K,TreeSet<V>>实现。
ArrayListMultimap
使用HashMap<K, ArrayList<V>>实现。
LinkedHashMultimap
使用LinkedHashMap<K, LinkedHashSet<V>>实现。
LinkedListMultimap<K,V>
使用HashMap<K, class KeyList<K,V>>实现。
KeyList是一个双向链表类。保存了一个特定的K。相应的全部Value的值。
另外,LinkedListMultimap还维护了一个由Map中全部的Entry组成的双向链表。
由两种双向链表保证迭代的顺序。
MultiSet
HashMultiset
使用HashMap<K, class Count>实现。Count是一个计数的类。
LinkedHashMultiset
使用LinkedHashMap<K, classCount>实现。
TreeMultiset
独立实现了一个AVL树。树的每一个节点保存了一个int类型的字段,表示元素数量。
ConcurrentHashMultiset
使用ConcurrentHashMap<E,AtomicInteger>实现。
EnumMultiset
使用EnumMap<E, Count>实现。
Table
ArrayTable<R,C,V>
固定大小的二维数组,创建的时候须要指定R和C的有效对象列表。以后不能改动。
内部包括三个数据结构:(1) V的数组,长度为行数量*列数量。(2) 从R对象到index的ImmutableMap。
(3)从C对象到index的ImmutableMap。
HashBasedTable<R,C,V>
内部实现上採用了HashMap<R,HashMap<C,V>>的形式。
TreeBasedTable<R,C,V>
内部实现上採用了TreeMap<R, TreeMap<C,V>>的形式。
MutableClassToInstanceMap
从类到类实例的映射。
TreeRangeSet/TreeRangeMap
特点:Key是一个区间。
仅仅读集合类
特点:一旦创建后就无法改动。
Interface |
JDK or Guava? |
Immutable Version |
Collection |
JDK |
ImmutableCollection |
List |
JDK |
ImmutableList |
Set |
JDK |
ImmutableSet |
SortedSet/NavigableSet |
JDK |
ImmutableSortedSet |
Map |
JDK |
ImmutableMap |
SortedMap |
JDK |
ImmutableSortedMap |
Multiset |
Guava |
ImmutableMultiset |
SortedMultiset |
Guava |
ImmutableSortedMultiset |
Multimap |
Guava |
ImmutableMultimap |
ListMultimap |
Guava |
ImmutableListMultimap |
SetMultimap |
Guava |
ImmutableSetMultimap |
BiMap |
Guava |
ImmutableBiMap |
ClassToInstanceMap |
Guava |
ImmutableClassToInstanceMap |
Table |
Guava |
ImmutableTable |
原文:http://www.cnblogs.com/slgkaifa/p/7102759.html
内容总结
以上是互联网集市为您收集整理的Java集合类汇总记录--guava篇全部内容,希望文章能够帮你解决Java集合类汇总记录--guava篇所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。