guava Splitter 与java 内置的string的split 方法的区别

java内置的会忽略空内容,guava Splitter不会忽略,也可以自由选择的忽略。
guava Splitter  可以通过splitToList方法直接将结果转成List。

/**
 * {@code Splitter}和{@code Joiner} 这两个对于map的相反的操作,在web框架例如spring mvc中用到过.
 *
 * 对于get url后面的参数和pos form中前端参数的连接和后端的拆分都有用到.每个框架的处理思维是一样的.
 *
 * @author doctor
 *
 * @since 2015年3月14日 下午9:00:17
 */
..............
  @Test
    public void test_string_split() {
        String[] split = "a,b,,".split(","); // java内置的会忽略空内容
        assertThat(split, equalTo(Lists.newArrayList("a", "b").toArray()));
    }

    @Test
    public void test_guava_Splitter() {
        List<String> splitToList = Splitter.on(",").splitToList("a,b,,");//guava不会忽略

        assertThat(splitToList, equalTo(Lists.newArrayList("a", "b", "", "")));
    }

 @Test
    public void test_guava_Splitter_omitEmptyStrings() {
        // 或者可以自由选择的忽略 ,像java一样,忽略空字符串
        List<String> splitToList = Splitter.on(",").omitEmptyStrings().trimResults().splitToList("a,b,,");

        assertThat(splitToList, equalTo(Lists.newArrayList("a", "b")));
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值