使用数学和流在Java 8中重新映射数组

时间:2016-01-03 23:08:59

标签: java arrays math java-8 java-stream

Apache commons math有一个RealVector接口支持mapToSelf流体接口,其工作方式如下:

 RealVector result = v.mapAddToSelf(3.4).mapToSelf(new Tan()).mapToSelf(new Power(2.3));

如果我有一个double[]数组,我将如何使用Java 8流和Java Math进行类似的操作?必须重用相同的数组。

TIA, 奥莱

1 个答案:

答案 0 :(得分:9)

如果您已有阵列并且想要对其进行修改,则可以使用Arrays.setAll

<div class="container-fluid">...</div>

如果您想要修改原始数组,您可以从中创建Arrays.setAll(arr, i -> Math.pow(Math.tan(arr[i] + 3.4), 2.3)); 并映射每个元素:

DoubleStream