![](/img/trans.png)
[英]What arguments should add function accept for generic set<E> in java?
[英]Java 8 String join should accept Function<E,R>
有什么理由為什么String.join現在僅與CharSequence元素一起使用?
將不同集合的元素連接到String有點困難。
將其添加到api支持中將非常容易:
public static <E extends Object, R extends CharSequence> String join(final CharSequence delimiter, Iterable<E> elements, Function<E, R> stringExtractor)
並且要保持相同的api:
public static <E extends Object> String join(final CharSequence delimiter, Iterable<CharSequence> elements)
{
return join(delimiter, elements, Function.identity());
}
比起加入整數,我們可以:
String.join(",", IntStream.range(0, 5).boxed().collect(Collectors.toList()), elem -> elem.toString())
您確定不希望在流的末尾使用Collectors.joining()
收集器嗎?
范例程式碼
List<Integer> numbers = new ArrayList<>();
numbers.add(5);
numbers.add(6);
numbers.add(7);
numbers.add(8);
String value = numbers.stream().map(Object::toString).collect(Collectors.joining("-"));
System.out.println(value); // Outputs 5-6-7-8
工作示例 : http : //ideone.com/C1EGas
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.