Guava简介
Guava是google公司开源的Java工具包,主要包含集合 [collections] 、缓存 [caching] 、原生类型扩展[primitives support] 、并发库 [concurrency libraries] 、字符串处理 [string processing] 、I/O 等。
讲在前面
在正式开始之前,我们先来了解两个比较重要的接口Function和Predicates.
Fuction
Function可以说是Guava中函数式编程的核心,其代码如下:
1 | @GwtCompatible |
可以看到这个接口是一个泛型接口,分别给出了F和T两个泛型约束,F可以理解成为From也就是函数式的输入,T可以理解为To也就是函数式的输入,其核心方法apply就是表示从From到To的一个转换。
关于函数式编程可以看下这两篇blog。函数式编程初探 函数式编程
函数式编程的优点:
- 逃逸分析
- 不会修改外部数据