在本系列中我們首先來學習一些Guava的集合框架,也就是這個package:com.google.common.collect
在這個包下面有一些通用的集合接口和一些相關的類。
集合類型:
BiMap
Multiset
Multimap
ListMultimap
ListMultimap是Multimap的一個擴展,也能夠容納相同的entries,同時支持隨機訪問一個特定key的值。
SetMultimap
SetMultimap是Multimap的一個擴展,不容許容納相同的entries,也就是說如果有相同的key出現在SetMultimap中,那么這些key對應的值一定是不相同的。
SortedSetMultimap
SortedSetMultimap是SetMultimap的一個擴展,對於一個給定的key對應的value是一個SortedSet。
Table
Table是一個新的類型,有點象java.util.Map,但是它是根據行key和列key的坐標來索引value的。
ClassToInstanceMap
An extension of Map
that associates a raw type with an instance of that type.
集合的實現
List
ImmutableList
Set
ImmutableSet
ImmutableSortedSet
ContiguousSet (see Range)
Map
ImmutableMap
ImmutableSortedMap
MapMaker
BiMap
ImmutableBiMap
HashBiMap
EnumBiMap
EnumHashBiMap
Multiset
ImmutableMultiset
HashMultiset
LinkedHashMultiset
TreeMultiset
EnumMultiset
ConcurrentHashMultiset
Multimap
ImmutableMultimap
ImmutableListMultimap
ImmutableSetMultimap
ArrayListMultimap
HashMultimap
TreeMultimap
LinkedHashMultimap
LinkedListMultimap
Table
ImmutableTable
ArrayTable
HashBasedTable
TreeBasedTable
ClassToInstanceMap
ImmutableClassToInstanceMap
MutableClassToInstanceMap
Classes of static utility methods
Collections2
Iterators
Iterables
Lists
Maps
Queues
Sets
Multisets
Multimaps
Tables
ObjectArrays
Comparison
Ordering
ComparisonChain
Abstract implementations
AbstractIterator
AbstractSequentialIterator
ImmutableCollection
UnmodifiableIterator
UnmodifiableListIterator
Ranges
Range
RangeMap
DiscreteDomain
ContiguousSet
Other
Interner, Interners
Constraint, Constraints
MapConstraint, MapConstraints
MapDifference, SortedMapDifference
MinMaxPriorityQueue
PeekingIterator
Forwarding collections
ForwardingCollection
ForwardingConcurrentMap
ForwardingIterator
ForwardingList
ForwardingListIterator
ForwardingListMultimap
ForwardingMap
ForwardingMapEntry
ForwardingMultimap
ForwardingMultiset
ForwardingNavigableMap
ForwardingNavigableSet
ForwardingObject
ForwardingQueue
ForwardingSet
ForwardingSetMultimap
ForwardingSortedMap
ForwardingSortedMultiset
ForwardingSortedSet
ForwardingSortedSetMultimap
ForwardingTable