5.51 CustomConcurrentHashMap<K,V>:继承
AbstractMap<K,V>,实现
ConcurrentMap<K,V>。
以下内容引自:http://www.blogjava.net/xylz/archive/2010/07/20/326661.html,在此对imxylz表示感谢!
默认情况下
ConcurrentHashMap是用了
16个类似
HashMap
的结构,其中每一个
HashMap拥有一个独占锁。也就是说最终的效果就是通过某种
Hash算法,将任何一个元素均匀的映射到某个
HashMap的
Map.Entry上面,而对某个一个元素的操作就集中在其分布的
HashMap上,与其它
HashMap无关。这样就支持最多
16个并发的写操作。
5.52 ComputingConcurrentHashMap<K,V>:继承
CustomConcurrentHashMap<K,V>,实现
Cache<K,V>。
5.53 ForwardingConcurrentMap<K,V>:抽象类,继承
ForwardingMap<K,V>,实现
ConcurrentMap<K,V>。它的子类有
MapMaker.ComputingMapAdapter和
ComputingConcurrentHashMap.AdbstractSerializationProxy。
5.54 ConcurrentHashMuiltiset<E>:继承
AbstractMultiset<E>。
5.55 Constraints:是
Constraint的工厂类和工具类。
静态方法:
notNull():返回一个检查参数是否为空的
Constraint。
constraintCollection(Collection<E>
collection, Constraint<? Super E>
constraint):返回一个
Collection,该
Collection的添加新的元素的操作是被
constraint约束的,如果被插入的元素不满足
constraint约束则会抛出异常。
其它的静态方法与
constraintCollection类似,只是
Collection的类型不同。
5.56 ImmutableCollection<E>:抽象类,实现了
Collection<E>接口,是不可改变的容器,不支持增加、删除元素的操作。有四个内部类:
EmptyImmutableCollection、
ArrayImmutableCollection、
SerializedForm、
Builder。
5.57 ImmutableXXX、
EmptyImmutableXXX、
RegularImmutableXXX、
SingletonImmutableXXX:
ImmutableCollection的子类
(或子类的子类
),
EmptyXXX容器没有任何元素,
SingletonXXX容器只有一个元素,
RegularXXX有一个或多个元素。
5.58 EnumBiMap:
5.59 EnumHashBiMap:
5.60 EnumMultiset:
5.61 ForwardingXXX:内部封装了相应的对象,它的所有方法都直接转到封装对象的方法。
5.62 StandardTable<R, C,
V>:实现了
Table接口,内部封装了一个
Map<R,
Map<C, V>>:
backingMap和一个工厂
factory。
成员方法:
cellSet():返回由
Table的元素
Cell组成的
Set。
row(R
rowKey):返回行为
rowKey的
Map<C,
V>。
column(C
columnKey):返回列为
columnKey的
Map<R,
V>。
rowKeySet():返回由
Table的行
Key组成的
Set。
columnKeySet():返回由
Table的列
Key组成的
Set。
values():返回由
Table的值组成的
Collection。
rowMap():返回以行
Key为键的
Map。
columnMap():返回以列
Key为键的
Map。
5.63 HashBasedTable<R, C,
V>:继承
StandardTable<R, C,
V>。
静态方法:
create(...):新建一个
HashBasedTable。
以上。
分享到:
相关推荐
├─Google Guava 第01讲-Joiner详细介绍以及和Java8Collector对比.wmv ├─Google Guava 第02讲-Guava Splitter详细讲解以及实战练习.wmv ├─Google Guava 第03讲-Preconditions&Objects;&assert;讲解.wmv ├─...
使用google guava 实现定时缓存功能
Getting Started with Google Guava, guava的技术参考文档
Google Guava 官方教程 - 详情:https://blog.csdn.net/Dream_Weave/article/details/86252213
Google Guava 官方教程 - v1.1
google guava框架,包括Getting Started with Google Guava、google cache、base、io等介绍
Guava是一种基于开源的Java库,其中包含谷歌正在由他们很多项目使用的很多核心库。这个库是为了方便编码,并减少编码错误。这个库提供用于集合,缓存,支持原语,并发性,常见注解,字符串处理,I/O和验证的实用方法...
Guava 是一个 Google 的基于java1.6的类库集合的扩展项目,包括 collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, 等等. 这些高质量的 API 可以使你...
Getting Started with Google Guava code
Google Guava 官方教程 v1.1 2018-07-22 https://github.com/tianbian224/GuavaLearning/blob/master/Google%20Guava%20%E5%AE%98%E6%96%B9%E6%95%99%E7%A8%8B%20-%20v1.1.pdf
此文档为Guava中最流行和最强大的功能,提供更具可读性和解释性的说明
Getting Started with Google Guava.pdf -Bill Bejeck
标签:google、guava、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
Google Guava 官方教程
com.google.guava_1.6.0.jar.zip com.google.guava_1.6.0.jar.zip
Google Guava 官方教程,电子书,epub格式,可用在手机端阅读
19的guava包 希望对大家有帮助
标签:google、guava、jar包、java、中文文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
标签:google、guava、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
谷歌guava的jar包和源码,很值得收藏。直接通过exlipse的build path,导入jar包和源码,可供开发和学习