将 OptionalDouble 转换为 Optional <java.lang.Double> [英] Convert OptionalDouble to Optional <java.lang.Double>

查看:197
本文介绍了将 OptionalDouble 转换为 Optional <java.lang.Double>的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个构建列表的方法,我希望它返回列表的平均值作为可选值.

I have a method that builds a list and I want it to return the average of the list as an Optional value.

但是,当我使用 Java 8 计算平均值时,我总是以 OptionalDouble 形式获得返回值.

However, when I calculate the average value using Java 8, I always get the return value as an OptionalDouble.

如何转换

OptionalDouble to Optional<Double>?

以下是我的平均计算代码:

Below are my code for average calculation:

private static Optional<Double> averageListValue() {
     // Build list
     List<Double> testList = new ArrayList<>();
     testList.add(...);
     ...
     ...


     return testList.stream().mapToDouble(value -> value).average();
}

谢谢.

推荐答案

我会采用这种方法:

private static Optional<Double> convert(OptionalDouble od) {
    return od.isPresent() ? 
        Optional.of(od.getAsDouble()) : Optional.empty();
}

这篇关于将 OptionalDouble 转换为 Optional &lt;java.lang.Double&gt;的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆