我试图将整数列表转换为逗号分隔整数的字符串。
Collectors.joining(CharSequence delimiter) - 返回一个以遇到顺序连接输入元素的收集器,由指定的分隔符分隔。
List<Integer> i = new ArrayList<>(); // i.add(null);
for (int j = 1; j < 6; j++) {
i.add(j);
}
System.out.println(i.stream().collect(Collectors.joining(","))); // Line 8
我在第 8 行出错。
有没有办法通过 Java 8 中的流来做到这一点?
更新:
如果我用
"1", "2", "3","4","5"
创建一个字符串列表.有用。
最佳答案
是的。但是,没有Collectors.joining
对于 Stream<Integer>
;您需要一个 Stream<String>
所以你应该map
在收集之前。就像是,
System.out.println(i.stream().map(String::valueOf)
.collect(Collectors.joining(",")));
哪些输出
1,2,3,4,5
此外,您可以生成
Stream<Integer>
以多种方式。System.out.println(
IntStream.range(1, 6).boxed().map(String::valueOf)
.collect(Collectors.joining(","))
);
关于java - 将整数列表转换为逗号分隔的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57602096/