google Guava.jar----字符串之妙用

1. 爲字符串提供便利,有老牌的判斷字符串是否爲空字符串或者爲null,用指定字符填充字符串,以及拆分合並字符串,字符串匹配的判斷等等。

1. 使用com.google.common.base.Strings類的isNullOrEmpty(input)方法判斷字符串是否爲空。

boolean isNullOrEmpty = Strings.isNullOrEmpty(input);

2. 獲得兩個字符串相同的前綴或者後綴

String CommonPrefix = Strings.commonPrefix(a,b);  //相同前綴

String CommonSuffix = Strings.commonSuffix(c,d);  //相同後綴

3. Strings的padStart和padEnd方法來補全字符串

int minLength=5;

String padEndResult = Strings.padEnd("123",minLength,'0');  //在後面補全字符串

4. 使用Splitter類來拆分字符串,可以去掉拆分結果中的空串,可以對拆分後的字符串做trim()操作,還可以做二次拆分

Iterable<String> splitResults = Splitter.onPattern("[,,]{1,}")
                .trimResults()
                .omitEmptyStrings()
                .split("hello,word,,世界,水平");//得到的結果是  hello  word  世界  水平

Splitter的onPattern方法傳入的是一個正則表達式,其後緊跟的trimResults()方法表示要對結果做trim(), omitEmptyStrings()表示忽略空字符串,split方法會執行拆分操作。返回的結果爲Iterable<String>,可以使用for循環遍歷打印。

Splitter還有做二次拆分,例如可以將a=b;c=d這樣的字符串拆分成一個Map<String,String>.

   String toSplitString = "a=b;c=d,e=f";
   Map<String,String> kvs = Splitter.onPattern("[,;]{1,}").withKeyValueSeparator('=').split(toSplitString);

拆分字符串必然就有合併字符串,guava爲我們提供了Joiner類來做字符串的合併: 

String joinResult= Joiner.on(" ").join(new String[] {"hello","world"});

Splitter方法可以對字符串做二次的拆分,對應的Joiner也可以逆向操作,將Map<String,String>做合併:

String mapJoinResult = Joiner.on(",").withKeyValueSeparator("=").join(map);  // a=b, c=d

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章