如何连接整数列表List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6);Optional<Integer> result = numbers.stream().reduce((subtotal, element)-> Integer.valueOf(subtotal + ", " + element));但我有一个例外:线程“main”中的异常 java.lang.NumberFormatException:对于输入字符串:“1, 2”,位于 java.lang.NumberFormatException.forInputString(来源未知)
2 回答
Cats萌萌
TA贡献1805条经验 获得超9个赞
如果你想使用reduce
将整数转换为字符串然后使用累加器函数来做到这一点
Optional<String> result = numbers.stream().map(i->i.toString()).reduce((i,j)->i+", "+j);
或者你可以简单地使用Collectors.joining
String str = numbers.stream().map(i->i.toString()).collect(Collectors.joining(", "));
慕后森
TA贡献1802条经验 获得超5个赞
你可以用String.join它。它将给定的IterableofCharSequence与指定的分隔符连接起来(", "在您的情况下):
List<String> strings = numbers.stream().map(Object::toString).collect(Collectors.toList())
String concatenated = String.join(", ", strings)
添加回答
举报
0/150
提交
取消