String Utilsspa
Joinerorm
将一系列的字符串经过分隔符链接,能够经过方法跳过null,若是没有跳过会报NPE,也能够经过方法将null经过其余字符串代替blog
egip
Joiner joiner0 = Joiner.on(";").skipNulls();字符串
Joiner joiner = Joiner.on(";").useForNull("null");get
String res = joiner.join("Harry", null, "Ron", "Hermione");it
System.out.println(res);io
String info = Joiner.on(",").join(Arrays.asList(1, 5, 7));test
System.out.println(info);jdk
Splitter
jdk中有相似的分割方法,String.split 或者StringTokenizer
Splitter.on(char)经过一个特殊的分割符分割Splitter.on(',')
Splitter.on(CharMatcher)经过设置相关匹配的字符进行分割
Splitter.on(CharMatcher.BREAKING_WHITESPACE)
Splitter.on(CharMatcher.anyof(";,."))
Spliter.on(String) Splitter.on(",")
Splitter.on(Pattern)
Splitter.onPattern(String) 经过特殊的通配符进行分割
Splitter.fixedLength(int),指定长度切割字符串
修饰方法
omitEmptyStrings 自动去掉空字符
eg
Splitter.on(",").omitEmptyStrings().split("a,c,,d");
trimResults() 去掉空白的字符等于 trimResults(CharMatcher.WHITESPACE)
eg
Splitter.on(",").trimResults(CharMatcher.whitespace()).split("a,b ,c , d");
trimResults(CharMatcher) 去除指定字符
limit (int) 中止分割,当指定的字符串返回
splitToList()能够获取一个列表,而不是Iterable
Map Splitters 使用特定的分割符分割字符串为Map形式
MapSplitter
CharMatcher
Charsets
String test="testString";
//不推荐这样
try {
test.getBytes("UTF-8");
}catch (Exception e){
}
//应该这样
test.getBytes(Charsets.UTF_8);
对于这行代码,应该使用guava中的Charsets,提供了6种基本的
charset,更加好用
CaseFormat
格式化
public void testCaseFormat() {
String result = CaseFormat.UPPER_UNDERSCORE.to(CaseFormat.LOWER_CAMEL, "LAUCH_TIME");
System.out.println(result);
}