我试图将整数列表转换为逗号分隔的整数字符串。
Collectors.joining(CharSequence delimiter) - 返回一个 Collector,它按遇到顺序连接输入元素,由指定的分隔符分隔。
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 行收到错误:
Stream 类型中的方法 collect(Collector<? super Integer,A,R>) 不适用于参数 (Collector
)
有没有办法通过 Java 8 中的流来做到这一点?
如果我用 "1", "2", "3","4","5"
创建一个字符串列表。有用。
原文由 Nicky 发布,翻译遵循 CC BY-SA 4.0 许可协议
是的。但是,没有
Collectors.joining
对于Stream<Integer>
;你需要一个Stream<String>
所以你应该map
在收集之前。就像是,哪些输出
此外,您可以通过多种方式生成
Stream<Integer>
。