将 Stream<Double> 转换为 double[]

问题描述 投票:0回答:1

我必须从 Stream 中获取 double[],所以我像这样使用 mapToDouble :

Double[] input = {1.0,2.0,3.0};
double[] y = Stream.of(input).mapToDouble(d->d).toArray();

有更好的解决办法吗?

(我不喜欢 lambda "d -> d" )

stream.mapToObj(getDouble).mapTo
java java-stream
1个回答
0
投票

您可以使用

Double.doubleValue()
的方法参考,如果您觉得它更具可读性:

double[] y = Stream.of(input)
  .mapToDouble(Double::doubleValue)
  .toArray();

流中没有内置的拆箱方法。

© www.soinside.com 2019 - 2024. All rights reserved.