本套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)雅的操作字符串.
歡迎留言