guava中String处理的方法

String Utils

Joiner

将一系列的字符串通过分隔符连接,可以通过方法跳过null,如果没有跳过会报NPE,也可以通过方法将null通过其他字符串代替

 

eg

Joiner joiner0 = Joiner.on(";").skipNulls();

Joiner joiner = Joiner.on(";").useForNull("null");

String res = joiner.join("Harry", null, "Ron", "Hermione");

System.out.println(res);

String info = Joiner.on(",").join(Arrays.asList(1, 5, 7));

System.out.println(info);

 

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

8f386fd12454296002e5b53f414bf9c2e16.jpg

 

80093bf0921824a9fde7b76d9d46c0f3b9a.jpg

 

 

 

Charsets

String test="testString";

//不推荐这样

try {

test.getBytes("UTF-8");

}catch (Exception e){

 

}

//应该这样

test.getBytes(Charsets.UTF_8);

对于这行代码,应该使用guava中的Charsets,提供了6种基本的

charset,更加好用

 

CaseFormat

格式化

9dfb204ea4887341cde7fa81e2fd552f549.jpg

 

public void testCaseFormat() {

String result = CaseFormat.UPPER_UNDERSCORE.to(CaseFormat.LOWER_CAMEL, "LAUCH_TIME");

System.out.println(result);

}

 

 

 

 

转载于:https://my.oschina.net/iioschina/blog/3000121

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值