Guava 中文是石榴的意思,该项目是 Google 的一个开源项目,包括很多 Google 核心的 Java 经常使用库。

1. 基本工具 [Basic utilities]

    让使用Java语言变得更舒适

    1.1 使用和避免null:null是模棱两可的,会引起令人困惑的错误,有些时候它让人非常不舒服。非常多Guava工具类用高速失败拒绝null值,而不是盲目地接受

    1.2 前置条件: 让方法中的条件检查更简单

    1.3 常见Object方法: 简化Object方法实现,如hashCode()和toString()

    1.4 排序: Guava强大的”流畅风格比較器”

    1.5 Throwables:简化了异常和错误的传播与检查



2. 集合[Collections]

    Guava对JDK集合的扩展,这是Guava最成熟和为人所知的部分

    2.1 不可变集合: 用不变的集合进行防御性编程和性能提升。

    2.2 新集合类型: multisets, multimaps, tables, bidirectional maps等

    2.3 强大的集合工具类: 提供java.util.Collections中没有的集合工具

    2.4 扩展工具类:让实现和扩展集合类变得更easy,比方创建Collection的装饰器,或实现迭代器



3. 缓存[Caches]

    Guava Cache:本地缓存实现,支持多种缓存过期策略



4. 函数式风格[Functional idioms]

    Guava的函数式支持能够显著简化代码,但请慎重使用它



5. 并发[Concurrency]

    强大而简单的抽象,让编写正确的并发代码更简单

    5.1 ListenableFuture:完毕后触发回调的Future

    5.2 Service框架:抽象可开启和关闭的服务,帮助你维护服务的状态逻辑



6. 字符串处理[Strings]

    很实用的字符串工具,包含切割、连接、填充等操作



7. 原生类型[Primitives]

    扩展 JDK 未提供的原生类型(如int、char)操作, 包含某些类型的无符号形式



8. 区间[Ranges]

    可比較类型的区间API,包含连续和离散类型



9. I/O

    简化I/O尤其是I/O流和文件的操作,针对Java5和6版本号



10. 散列[Hash]

    提供比Object.hashCode()更复杂的散列实现,并提供布鲁姆过滤器的实现



11. 事件总线[EventBus]

    公布-订阅模式的组件通信,但组件不须要显式地注冊到其它组件中



12. 数学运算[Math]

    优化的、充分測试的数学工具类



13. 反射[Reflection]

    Guava 的 Java 反射机制工具类



详细资源下载地址:http://download.csdn.net/detail/luo201227/7207227

Google的Java经常使用类库 Guava的更多相关文章

  1. Forget Guava: 5 Google Libraries Java Developers Should Know

    Forget Guava: 5 Google Libraries Java Developers Should Know Published on 2016 7 13 Somenath PandaFo ...

  2. Google的java工具类Guava

    前言 google开发java项目肯定也不想重复造轮子,所以肯定也有工具类,就是它了:Guava 我将举例几个实际的例子,发挥这个工具类好用的功能.更多的方法和功能,还有内部的实现可以直接参考http ...

  3. Atitit java onvif 开源类库 getProfiles getStreamUri

    Atitit java onvif 开源类库 getProfiles getStreamUri 1. ONVIF Java Library by Milgo1 1.1. https://github. ...

  4. Java以基础类库

    Java以基础类库JFC(Java Foundation Class)的形式为程序员提供编程接口API,类库中的类按照用途归属于不同的包中. (一)java.lang包 Java最常用的包都属于该包, ...

  5. java 调用 C# 类库搞定,三步即可,可以调用任何类及方法,很简单,非常爽啊

    java 调用 C# 类库搞定,三步即可,可以调用任何类及方法,很简单,非常爽啊 java 调用 C# 类库搞定,可以调用任何类及方法,很简单,非常爽啊 总体分三步走: 一.准备一个 C# 类库 (d ...

  6. Atitit 图像处理 常用8大滤镜效果 Jhlabs 图像处理类库 java常用图像处理类库

    Atitit 图像处理 常用8大滤镜效果 Jhlabs 图像处理类库 java常用图像处理类库1.1. 5种常用的Photoshop滤镜,分别针对照片的曝光.风格色调.黑白照片处理.锐利度.降噪这五大 ...

  7. Google的Java编程风格指南(Java编码规范)

    这份文档是Google Java编程风格规范的完整定义.当且仅当一个Java源文件符合此文档中的规则, 我们才认为它符合Google的Java编程风格. 与其它的编程风格指南一样,这里所讨论的不仅仅是 ...

  8. Java中基础类库使用

    Java中基础类库: 在这里我仅仅介绍几种我个人觉得会常常使用的 1:Object类中的Clone机制仅仅是对对象进行浅层次的克隆,假设须要进行深层次的克隆的话那么就要自己写(详细Clone方法请參考 ...

  9. java 调用 C# 类库 实战视频, 非常简单, 通过 云寻觅 javacallcsharp 生成器 一步即可!

    java 调用 C# 类库 实战视频, 非常简单, 通过 云寻觅 javacallcsharp 生成器 一步即可! 通过 云寻觅 javacallcsharp 生成器 自动生成java jni类库,  ...

随机推荐

  1. setuptools,easy_install使用

    当需要安装第三方python包时,可能会用到easy_install命令.easy_install是由PEAK(Python Enterprise Application Kit)开发的setupto ...

  2. 基于visual Studio2013解决C语言竞赛题之0408素数

      题目 解决代码及点评 判断一个数是不是素数的方法,一般是看n是不是能被n以内的某个整数(1除外)整除 为了提高效率,这个整数范围一般缩小到n的平方根 如果在这个范围内的整数都不能整除,那么 ...

  3. 解题报告 HDU1087 Super Jumping! Jumping! Jumping!

    Super Jumping! Jumping! Jumping! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 ...

  4. Effective C++:条款37:绝不又一次定义继承而来的缺省參数值

    因为又一次定义继承而来的non-virtual函数是不对的(见上一个条款),所以这个条款就将问题局限于:绝不又一次定义继承一个带有缺省參数值的virtual函数. (一) virtual函数是动态绑定 ...

  5. IOS-图片操作集合

    编辑图片的几个方法 第一种 先用UIImage对象加载一张图片 然后转化成CGImageRef放到CGContext中去编辑 第二种  用CGImageCreate函数创建CGImageRef 然后把 ...

  6. android中menu菜单的简单使用

    我认为menu用起来简洁方便,特别是在一些大一点的程序中我们早就厌烦了一遍遍的加button,设置了菜单可谓是事半功倍,简单省事. <1>先声明定义下你的menu: private sta ...

  7. IBATIS动态SQL

    转自:http://www.cnblogs.com/phoebus0501/archive/2011/05/16/2048126.html 直接使用JDBC一个非常普遍的问题就是动态SQL.使用参数值 ...

  8. for循环语句之求和,阶乘,求偶,求n次篮球蹦起高度

    for循环语句格式: ;;/*循环条件*/i++/*状态改变*/) { //循环体,执行代码:(break;跳出循环体) } for 穷举法用循环把各种可能的情况都走一遍,然后用if条件把满足要求的结 ...

  9. django1.6读书笔记一

    reporter是Article中的一个外键,我们可以有多篇文章指向同一个reporter,然后通过使用article_set.all()就可以返回其所有的headline了,也可以添加条件来筛选. ...

  10. log4j的使用及参考

    log4j.properties 使用 一.参数意义说明 输出级别的种类 ERROR.WARN.INFO.DEBUG ERROR 为严重错误 主要是程序的错误 WARN 为一般警告,比如session ...