如何在Java中将Integer []转换为int []数组?
问题描述:
是否存在将Integer数组转换为int数组的理想方法? (我不想遍历每个元素;我正在寻找一种优雅且快速的方式编写它)
Is there a fancy way to cast an Integer array to an int array? (I don't want to iterate over each element; I'm looking for an elegant and quick way to write it)
我正在使用
scaleTests.add(Arrays.stream(data).boxed().toArray(Double[]::new));
我正在寻找一线客轮,但找不到任何东西.
I'm looking for an one-liner but wasn't able to find something.
目标是:
int[] valuesPrimitives = <somehow cast> Integer[] valuesWrapper
答
您可以使用Java 8的Stream API
You can use Stream APIs of Java 8
int[] intArray = Arrays.stream(array).mapToInt(Integer::intValue).toArray();