Guava之 Joiner & Splitter

时间:2022-04-27
本文章向大家介绍Guava之 Joiner & Splitter,主要内容包括Guava字符串拼接工具类、参考、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。

Guava字符串拼接工具类

Joiner和Splitter 算是一个比较有意思的工具类了,可以实现字符串的分割和容器的拼接

具体的使用还是比较简单的,给个例子就可以清晰看到如何使用了

Joiner使用姿势

@Test
public void testJoiner() {
    List<String> list = new ArrayList<String>() {
        {
            add("12");
            add("@#");
            add("absc");
        }
    };

    String ans = Joiner.on(",").join(list);
    System.out.println("join: " + ans);

    String[] strs = new String[]{"123", "456", "789", "asdf"};
    ans = Joiner.on("&").join(strs);
    System.out.println(ans);


    Map<String, Object> params = new HashMap<String, Object>() {
        {
            put("key1", "123");
            put("key2", 678);
            put("key3", "what");
        }
    };

    ans = Joiner.on("&").withKeyValueSeparator("=").join(params);
    System.out.println("map->" + ans);
}

输出

join: 12,@#,absc
123&456&789&asdf
map->key1=123&key2=678&key3=what

Splitter使用姿势

@Test
public void testSplit() {
    String ans = "key1=123&key2=678&key3=what";

    Map<String, String> map =Splitter.on("&").withKeyValueSeparator("=").split(ans);
    System.out.println("split map: " + map);


    ans = "123&456&789&asdf";
    List<String> list = Splitter.on("&").splitToList(ans);
    System.out.println("split list: " + list);
}

输出

split map: {key1=123, key2=678, key3=what}
split list: [123, 456, 789, asdf]

参考