`
arcticfox9902
  • 浏览: 108413 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
社区版块
存档分类
最新评论

[Google Guava笔记](七)collect

阅读更多

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视频教程.txt

    ├─Google Guava 第01讲-Joiner详细介绍以及和Java8Collector对比.wmv ├─Google Guava 第02讲-Guava Splitter详细讲解以及实战练习.wmv ├─Google Guava 第03讲-Preconditions&Objects;&assert;讲解.wmv ├─...

    Google Guava 官方教程

    **Google Guava官方教程** Google Guava 是一个广泛使用的 Java 库,它提供了一系列现代编程实用工具,旨在简化常见的编程任务。Guava 提供了集合框架的扩展、并发支持、缓存机制、字符串处理工具、I/O 工具以及...

    使用google guava 实现定时缓存功能

    在IT行业中,Google Guava库是一个非常强大的工具集,它为Java开发人员提供了一系列实用的集合、缓存、并发和I/O工具。本篇文章将详细探讨如何利用Guava库实现定时缓存功能,以提高应用的性能和效率。 首先,Guava...

    Getting Started with Google Guava

    《Getting Started with Google Guava》是Bill Bejeck所著,旨在帮助Java开发者通过Google Guava库编写更优质、更高效的代码。Bill Bejeck是一位拥有10年经验的资深软件工程师,专注于各种项目的开发工作。在写作...

    google guava 中文教程

    Google Guava是Google开发的一个开源Java库,它包含了一系列高级且实用的集合类、缓存机制、并发工具、字符串处理、I/O工具等,极大地提升了Java开发者的工作效率。Guava的目标是通过提供一系列现代实用工具,帮助...

    google开源项目guava.jar包

    谷歌的Guava库是Java开发中的一个非常重要的开源项目,它提供了一系列的高效、实用的工具类,大大简化了常见的编程任务。Guava的核心特性包括集合框架、缓存、原生类型支持、并发库、字符串处理、I/O操作等。这个...

    guavapdf-ch_GoogleGuava官方教程_

    此外,“第七下载.url”可能是一个链接,指向更多关于Guava的下载和学习资源。 通过深入学习和实践Guava库,Java开发者可以提高代码质量和性能,充分利用Guava提供的各种工具和功能,让编程工作变得更加高效和便捷...

    guava-20.0-API文档-中文版.zip

    标签:google、guava、jar包、java、中文文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    com.google.common.collect jar包

    首先,`com.google.common.collect`是Google Guava库的一部分,Guava是Google的一个开源项目,旨在提供一系列现代Java实践,包括高效的数据结构、实用的并发工具、字符串处理以及I/O等。Guava库中的`collect`模块...

    Google Guava

    Google Guava库是由Google开发的一个开源项目,旨在提供Java开发中常用的基础功能。它的目标是简化Java编程,为开发者提供更加清晰、高效的代码编写方式。通过使用Guava库,开发者可以不必在每次项目中重复编写相同...

    google guava

    Google Guava是一个由Google开发并维护的开源Java库,它为Java开发者提供了许多实用的工具类和集合框架,极大地简化了常见的编程任务。这个框架包含了多个模块,如基础(base)、缓存(cache)、I/O(io)以及并发...

    Google Guava 多版本集合

    Guava是一种基于开源的Java库,其中包含谷歌正在由他们很多项目使用的很多核心库。这个库是为了方便编码,并减少编码错误。这个库提供用于集合,缓存,支持原语,并发性,常见注解,字符串处理,I/O和验证的实用方法...

    Getting Started with Google Guava code

    **Google Guava简介** Google Guava 是一个广泛使用的开源库,为Java开发人员提供了一系列实用工具类和集合框架。这个库旨在简化常见的编程任务,提高代码的可读性和可维护性。Guava 提供了丰富的功能,包括缓存、...

    com.google.common.collect

    在Java编程领域,`com.google.common.collect`是一个非常重要的包,它是Google的Guava库的一部分。Guava是一个广泛使用的开源库,提供了许多实用的集合框架、缓存、原生类型支持、并发工具、字符串处理等功能。`...

    google Guava集合工具类(超实用)

    Guava 是一个 Google 的基于java1.6的类库集合的扩展项目,包括 collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, 等等. 这些高质量的 API 可以使你...

    Google Guava 官方教程 - v1.1.2018-07-22.pdf

    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

    google-guava.jar

    《谷歌Guava库详解》 谷歌Guava,全称为Google Guava,是Google推出的一款Java库,它包含一系列基础工具类,旨在简化Java开发工作,提高代码效率和可维护性。Guava的核心特性包括集合框架、缓存、原始类型支持、...

    Google的Guava工具包

    Guava 是一个 Google 的基于java1.6的类库集合的扩展项目,包括 collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, 等等. 这些高质量的 API 可以使你...

    Getting Started with Google Guava.pdf

    Google Guava 是一个由Google提供的开源Java库,它包含了许多强大的工具类和集合类,这些类可以帮助开发者更高效地编写Java代码。Guava的目标是提供一种更加简洁、优雅的方式来处理常见的编程任务,并且在很多情况下...

    com.google.guava_1.6.0.jar.zip

    《深入解析Google Guava库:Ints模块》 在Java编程中,Google Guava库是一个不可或缺的工具集合,它提供了大量的高效、实用的类和方法,极大地提升了开发效率。本次我们将聚焦于Guava中的`Ints`模块,通过分析`...

Global site tag (gtag.js) - Google Analytics