Javagoogle为java开发提供的开源开发工具guava深入手册
一、Joiner/Splitter
Joiner是连接器,Splitter是分割器,通常我们会把它们定义为static final,利用on生成对象后在应用到String进行处理,这是可以复用的。
对于Joiner,常用的方法是:
- 跳过NULL元素:skipNulls()
- 对于NULL元素使用其他替代:useForNull(String)
对于Splitter,常用的方法是:
- 分割结果进行trim()操作:trimResults()
- 分割结果去除无内容的字符串:omitEmptyStrings()
- 注意拆分的方式,有字符串,还有正则,还有固定长度分割(太贴心了!)
二、CharMatcher
CharMatcher,将字符的匹配和处理解耦,并提供丰富的方法供你使用!
对基本类型进行支持
guava对JDK提供的原生类型操作进行了扩展,使得功能更加强大!
三、Ints
guava提供了Bytes/Shorts/Ints/Iongs/Floats/Doubles/Chars/Booleans这些基本数据类型的扩展支持,只有你想不到的,没有它没有的!
对JDK集合的有效补充
四、Multiset
Multiset是什么,我想上面的图,你应该了解它的概念了。Multiset就是无序的,但是可以重复的集合,它就是游离在List/Set之间的“灰色地带”!
结果:
五、Immutable
在项目中,我们常常需要初始定义一些不可变的map或者list,jdk中有unmodifiable,但是该集合使用过程中会出现很多不便的地方,所以guava引入Immutable
六、BiMap
JDK提供的MAP让我们可以find value by key,那么能不能通过find key by value呢,能不能KEY和VALUE都是唯一的呢。这是一个双向的概念,即forward+backward。在实际场景中有这样的需求吗?比如通过用户ID找到mail,也需要通过mail找回用户名。没有guava的时候,我们需要create forward map AND create backward map,and now just let guava do that for you.
BiMap中的键值都是唯一的,也是唯一绑定的,所以结果是两个键值对被强制替换成了一个。
以上是 Javagoogle为java开发提供的开源开发工具guava深入手册 的全部内容, 来源链接: utcz.com/z/511120.html