如何在Java中连接两个float数组?

mal*_*lat 4 java arrays java-8

使用Java 8我试图连接两个浮点数组:

void f(float[] first, float[] second) {
    float[] both = ???
}
Run Code Online (Sandbox Code Playgroud)

通过快速SO搜索,我想我可以简单地按照这里的指示.所以我尝试过:

float both[] = FloatStream.concat(Arrays.stream(first), Arrays.stream(second)).toArray();
Run Code Online (Sandbox Code Playgroud)

但是这不按照这里解释的那样编译.所以我尝试了效率较低的解决方案并Stream直接使用:

float[] both = Stream.concat(Arrays.stream(first), Arrays.stream(second)).toArray(float[]::new);
Run Code Online (Sandbox Code Playgroud)

它无法从我的日食编译说:

The method stream(T[]) in the type Arrays is not applicable for the arguments  (float[])
Run Code Online (Sandbox Code Playgroud)

float[]在Java 8 中连接两个数组的最有效(和简单)方法是什么?


更新:显然问题的关键在于我必须处理float而不是处理double.

San*_*nki 7

不要自己动手,用于System.arrayCopy()将两个数组复制到组合大小的新数组中.这样效率更高,因为它使用本机操作系统代码.