Java8 教程第十六章之StringJoiner 用法

本套JAVA8教程由于是有英文翻譯過來的,如果有翻譯不對的地方還請多多包涵。

本節(jié)課先簡單的介紹下Java8有哪些新特性,對于Java6/7版本做出哪些更改.那廢話不多說,趕緊開始今天的課程吧.

在本文中,我們將向您展示一些StringJoiner示例以加入String。

StringJoiner

通過分隔符加入String

  StringJoiner sj = new StringJoiner(",");
        sj.add("aaa");
        sj.add("bbb");
        sj.add("ccc");
        String result = sj.toString(); //aaa,bbb,ccc

通過分隔符加入String,并以提供的前綴開頭,以提供的后綴結(jié)束

StringJoiner sj = new StringJoiner("/", "prefix-", "-suffix");
        sj.add("2016");
        sj.add("02");
        sj.add("26");
        String result = sj.toString(); //prefix-2016/02/26-suffix

String.join

StringJoiner由靜態(tài)String.join()內(nèi)部使用。通過分隔符加入String。

 String result = String.join("-", "2015", "10", "31" );
// //2015-10-31

通過分隔符加入列表。

    List<String> list = Arrays.asList("java", "python", "nodejs", "ruby");
     //java, python, nodejs, ruby
    String result = String.join(", ", list);

Collectors.joining

通過Streams中的函數(shù)進(jìn)行拼接

List<String> list = Arrays.asList("java", "python", "nodejs", "ruby");
//java | python | nodejs | ruby
String result = list.stream().map(x -> x).collect(Collectors.joining(" | "));

拼接Object對象

void test(){

        List<Game> list = Arrays.asList(
                new Game("Dragon Blaze", 5),
                new Game("Angry Bird", 5),
                new Game("Candy Crush", 5)
        );

        //{Dragon Blaze, Angry Bird, Candy Crush}
        String result = list.stream().map(x -> x.getName())
            .collect(Collectors.joining(", ", "{", "}"));

    }

    class Game{
        String name;
        int ranking;

        ....
    }

以上就是對String的拼接做出的講解,在java8中確實(shí)很優(yōu)雅的操作字符串.

歡迎留言

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容