6
我试图将2D列表转换为2D int
数组。但是,似乎我只能收集物体,而不是原始物体。如何收集原始数组中的Stream的结果?
当我这样做:
data.stream().map(l -> l.stream().toArray(int[]::new)).toArray(int[][]::new);
我得到的编译时错误Cannot infer type argument(s) for <R> map(Function<? super T,? extends R>)
。
但是,如果我将int[]
更改为Integer[]
,它会进行编译。我怎样才能得到它只使用int
?
对于拉姆达,尝试'l.stream()。mapToInt(整数::的intValue).toArray()' – 4castle
我怎样才能收集这个结果虽然?这只是在Stream上执行操作而不存储结果。 –
我的建议处理您使用的不正确的lambda。它现在会收集好。 – 4castle