繼this thread如何加入列表爲String
,加入所有,但第一要素列表中的字符串
我想知道什麼是最簡潔的方式,從列表中刪除一個元素,然後加入剩餘名單。例如,如果我的名單是:
[a, b, c, d]
,我想String
:
"bcd"
我怎麼能最簡潔地掉落,然後加入剩餘的元素?我是Java的新手,我的解決方案感覺很笨拙。
繼this thread如何加入列表爲String
,加入所有,但第一要素列表中的字符串
我想知道什麼是最簡潔的方式,從列表中刪除一個元素,然後加入剩餘名單。例如,如果我的名單是:
[a, b, c, d]
,我想String
:
"bcd"
我怎麼能最簡潔地掉落,然後加入剩餘的元素?我是Java的新手,我的解決方案感覺很笨拙。
如果您使用java8我喜歡用流和可用的收藏家:
String result = list.stream().skip(1).collect(Collectors.joining(""));
String[] data = {"a", "b", "c", "d"};
String[] f = Arrays.copyOfRange(data, 1, 4);
String r = Arrays.toString(f).substring(1).replaceAll("\\]$", "").replaceAll(", ", "");
它的工作與Java 6,沒有任何圖書館。
謝謝,apreciate它 –
如果你想刪除像第一個或更多元素的其他元素,你可以使用filter來做 。我認爲這是非常普遍的方式。
String [] array = {"a","b","c","d", "a"};
List<String> list = Arrays.asList(array);
String result = list.stream().filter(element -> !element.equals("a")).collect(Collectors.joining(","));
String result2 = Arrays.stream(array).filter(element -> !element.equals("a")).collect(Collectors.joining(","));
System.out.println(result);
System.out.println(result2);
這是否也只是Java 8? –
不幸的是,它僅在Java 8中 –
Arrays.stream() –
謝謝,這非常漂亮。嗯,在我的公司盒子裏,我被Java 7困住了:( –
好吧,你應該使用一些具有'StringUtils'的庫,或者使用'StringBuilder'編寫你自己的函數。 –