1

有没有办法在不使用任何循环的情况下将Object[]数组转换为数组。double[]并将Double[]数组转换为double[]数组

4

1 回答 1

1

2013 年我们还没有 Java Stream API,就在 2014 年 3 月。有了它,您可以得到答案:

从 Object[] 到 double[]

Object[] objectArray = {1.0, 2.0, 3.0};

double[] convertedArray = Arrays.stream(objectArray) // converts to a stream
    .mapToDouble(num -> Double.parseDouble(num.toString())) // change each value to Double
    .toArray(); // converts back to array

从双[]到双[]

Double[] doubleArray = {1.0, 2.0, 3.0};

double[] conv = Arrays.stream(doubArray)
    .mapToDouble(num -> Double.parseDouble(num.toString()))
    .toArray();

您注意到这是相同的操作,因为两种转换的结果类型都是double[]。改变的是源数据。

PS:什么迟到的答案:|

于 2019-03-01T12:59:44.120 回答