guava中String處理的方法

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);

}

相關文章
相關標籤/搜索