Google Guava中Joiner用法
一:Google Guava的下载地址链接:
Google Guava的jar包下载地址:https://pan.baidu.com/s/1B2IjhOlrulOgwceG1TehKQ 密码:2qha
1:java application项目引入下载的jar包。
2:web项目直接拷贝到lib文件下
3:maven项目可引入如下依赖:
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>18.0</version>
</dependency>
二:Joiner的用例
Google Guava中的Joiner给我提供了很方便的字符串连接操作。写起来十分优雅,不需要我们手动去实现字符串的拼接。
下面的测试可以很清晰的看到Joiner这个工具类的优势
import com.google.common.base.Joiner;
public class Main {
public static void main(String[] args) {
String a = "name";
Object b[] = new Object[]{"nick","adidas",10000};
System.err.println(jointerMade(a,b));
System.err.println(handMade(a,b));
}
public static String jointerMade(String a,Object b[]){
String result = Joiner.on("_").join("user_common_count", a, b);
return result;
}
public static String handMade(String a,Object b[]){
StringBuffer result = new StringBuffer();
String Delimiter = "_";
result.append("user_common_count"+Delimiter);
result.append(a+Delimiter);
for(Object temp : b){
result.append(temp+Delimiter);
}
// String result1 = result.toString();
// return result1.substring(0,result.length()-Delimiter.length());
result.setLength(result.length()-Delimiter.length());
return result.toString();
}
}
是不是体会到了工具类的强大。。
三:Joiner的扩展
skipNulls会过滤掉空的参数,包括数组中的null值。
Joiner.on("|").skipNulls().join(stringList);
usefornull会以参数替换空的参数,包括数组中的null值。
Joiner.on("|").useForNull("no value").join(stringList);
四:Joiner的注意事项
jointer可以可以拼接各种类型的参数,包括字符串,对象数组,List,Set,Map等
1:这里有一个问题,就是当有存在对象数组Object[]里面的元素不会被拼接到字符串中,而是以地址的形式拼接。
2:当有空值的时候需要用skipNulls或者usefornull来处理空值否则会报错。
感谢博主的博客: