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

回到顶部