I'm trying to convert 2D list to a 2D int
array. However, it seems I can only collect objects, not primitives.
When I do:
data.stream().map(l -> l.stream().toArray(int[]::new)).toArray(int[][]::new);
I get the compile-time error Cannot infer type argument(s) for <R> map(Function<? super T,? extends R>)
.
However, if I change int[]
to Integer[]
, it compiles. How can I get it to just use int
?
l.stream().mapToInt(Integer::intValue).toArray()
– Pothouse