先介绍下如何引用guava吧,如果是maven项目,只需引入一个jar即可
下面可是正式学习:
guava 拼接和分割分别使用Joiner和Splitter对象;
1. 拼接
如现有数组String [] s=new String[]{"one", "two", null, " ", "three"} ,我们要在每个元素中加一个逗号,拼接成字符串(比较常用的需求),那原来的方法是,循环遍历去拼接;
如果用guava的Joiner对象,只需要一句话:
Joiner.on(",").skipNulls().join(s);
打印返回结果:one,two, ,three;
不但很容易的拼接了字符,而且去除了null元素。
说明:on内传的是拼接字符或字符串,join参数为Iterable对象,所以穿数组、list、set都可。
2. 分割
使用Splitter 对象,先看下面例子:
String sour = “,a,,b,”;
String[] split = sour.split(“,”);
System.out.println(Arrays.asList(split));
使用java原生态分割,大家觉得会返回什么?
答案:[, a, , b]
那有办法把空元素去掉吗,答案是肯定的。
Iterable split = Splitter.on(‘,’).trimResults().omitEmptyStrings().split(sour);
System.out.println(split.toString());
输出:[a, b],是我们想要的。
omitEmptyStrings() 从结果中自动忽略空字符串
trimResults() 移除结果字符串的前导空白和尾部空白