Guava 集合框架
在本系列中我们首先来学习一些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
Guava 集合框架的更多相关文章
- 集合框架学习之Guava Collection
开源工具包: Guava : Google Collection Apache:Commons Collecton 1.1 Google Collections Guava:google的工程师利用传 ...
- java2集合框架的一些个人分析和理解
Java2中的集合框架是广为人知的,本文打算从几个方面来说说自己对这个框架的理解. 下图是java.util.Collection的类图(基本完整,有些接口如集合类均实现的Cloneable.Seri ...
- Java基础19:Java集合框架梳理
更多内容请关注微信公众号[Java技术江湖] 这是一位阿里 Java 工程师的技术小站,作者黄小斜,专注 Java 相关技术:SSM.SpringBoot.MySQL.分布式.中间件.集群.Linux ...
- Guava集合--新集合类型
Guava引入了很多JDK没有的.但我们发现明显有用的新集合类型.这些新类型是为了和JDK集合框架共存,而没有往JDK集合抽象中硬塞其他概念.作为一般规则,Guava集合非常精准地遵循了JDK接口契约 ...
- 一起学 Java(三) 集合框架、数据结构、泛型
一.Java 集合框架 集合框架是一个用来代表和操纵集合的统一架构.所有的集合框架都包含如下内容: 接口:是代表集合的抽象数据类型.接口允许集合独立操纵其代表的细节.在面向对象的语言,接口通常形成一个 ...
- 【目录】JUC集合框架目录
JUC集合框架的目录整理如下: 1. [JUC]JUC集合框架综述 2. [JUC]JDK1.8源码分析之ConcurrentHashMap(一) 3. [JUC]JDK1.8源码分析之Concurr ...
- java面试题——集合框架
先来看一下集合框架关系图 Collection FrameWork 如下: Collection ├List │├LinkedList │├ArrayList │└Vector │ └Stack └S ...
- Java使用实现面向对象编程:第七章集合框架的解读=>重中之重
对于集合框架,是非常重要的知识,是程序员必须要知道的知识点. 但是我们为什么要引入集合框架呢? 我们之前用过数组存储数据,但是采用数组存储存在了很多的缺陷.而现在我们引用了集合框架,可以完全弥补了数组 ...
- Java集合框架List,Map,Set等全面介绍
Java集合框架的基本接口/类层次结构: java.util.Collection [I]+--java.util.List [I] +--java.util.ArrayList [C] +- ...
随机推荐
- 大圆满的精髓–肯•威尔伯(KEN WILBER)
作者:肯·威尔伯(Ken Wilber),目前被公认为是“后人本心理学”的最重要的思想家.理论家和发言人,其影响已经跨越了心理学领域,波及哲学和神学领域.由于肯·威尔伯在意识领域的研究极富基础性和开创 ...
- ASP.MVC EASY UI 入门之 —— Tree & ComboTree
1.常规的EASY UI的tree和comboTree代码基本是官方的DEMO都有的,虽然很简单,但是还是要实践的做一次,才能更清晰的了解和使用它!先上效果图 因为用的是code first,所以数据 ...
- 封装好的socket,拿去用
年终有空咯,分享一下自己封装的socket类库. 由于公司写的socket代码非常醉人,我不能忍,所以自己封装了一下方便大家使用,现在有空也分享给园友用用看,现在还存在一定的问题,等下我列出来,希望大 ...
- jQuery升级踩坑大全
jQuery升级踩坑大全 背景 jQuery想必各个web工程师都再熟悉不过了,不过现如今很多网站还采用了很古老的jQuery版本.其实如果早期版本使用不当,可能会有DOMXSS漏洞,非常建议升级到j ...
- linux初级,连网
第一次写,今天刚好装上centos,然后就玩装一些软件,但要联网,所以琢磨了半天连网,下面总结下今天积累的一些知识点吧! 首先需要查看电脑有没有装驱动:ifconfig -a, 看有没有eh0(网卡) ...
- 局域网IP段
局域网的出现,一方面解决内部安全问题,另一个方面解决ipv4不够用的问题.局域网方便维护和管理,目前局域网Ip地址段为 局域网地址范围分三类: C类:192.168.0.0-192.168.255.2 ...
- 各种图(流程图,思维导图,UML,拓扑图,ER图)简介
来源于:http://www.cnblogs.com/jiqing9006/p/3344221.html 流程图 1.定义:流程图是对过程.算法.流程的一种图像表示,在技术设计.交流及商业简报等领域有 ...
- extjs5 常用属性的说明
uses -- 被引用的类可以在该类之后才加载. requires -- 被引用的类必须在该类之前加载. alias : 相当于别名一样,可以起多个,可以通过xtype创建实例,我现在接触的有三种类型 ...
- openvpn的部署
http://www.gaohuirong.cn/openvpn/2016/04/12/linux-install-openvpn.html
- iOS开发小技巧--TableView Group样式中控制每个section之间的距离
一.TableView的Group样式中,默认的每个section都有sectionHeader和sectionFooter,只要调整这两个的大小就可以实现section之前的间距扩大或缩小 二.项目 ...