Google Guava介绍

本文详细介绍Google Guava库的功能和用途,包括集合工具类、缓存、并发、字符串处理等核心特性,适合Java开发者深入学习。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Google Guava介绍

Google Guava是Google的java项目广泛依赖的核心库,其功能强大并且高效稳定,我们日常企业开发或学习也可以参考和借鉴Guava.

其对集合Collection、缓存Cache、原生数据类型支持、并发库、通用注解、字符串处理和IO工具,都提供了高效的支持.

1、基本工具类

    1、使用和避免null
    2、前置条件(Preconditions)
    3、常见的Object方法
    4、排序:Guava强大的流畅风格比较器
    5、Throwables:简化异常和错误的传播与检查


    使用和避免null
        jdk1.8之后也提供了Optional类来处理null问题(应该是借鉴Guava的)

    前置条件
        jdk1.8之后也提供了前置条件支持

    常见的Object方法
        jdk1.7之后Objects方法里面也提供了一些工具类

2、集合

1、不可变集合(使用不可变集合进行防御性编程和性能提升)
2、新的结合类型
3、强大的集合工具类(Lists、Maps、Sets等)
4、扩展工具类

备注:强烈推荐使用Guava的集合工具类

3、缓存

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

4、函数式风格

不推荐使用Guava的函数式风格,推荐使用JDK8的lambda和Stream API.

5、并发


6、字符串处理

字符串常用工具

7、原生类型操作支持

提供对原生类型的操作支持

8、区间(Ranges)


9、I/O工具类

IO工具类个人更推荐apache下的commons io

10、散列

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

11、事件总线

发布-订阅模式的组件通信,但组件不需要显式地注册到其他组件中

12、数学运算(Math)


13、反射(Reflection)

Guava提供的Java反射工具类

总结

Guava的集合部分、Cache、反射部分应该好好的看看其源码可以从中收获很多.

参考

1、https://github.com/google/guava/wiki

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值