如何在javafx中将可选双精度转换为双精度

jay*_*jay 3 javafx option-type

如果编译以下代码,则会出现以下错误。如何解决这个问题

错误:不兼容的类型:OptionalDouble 无法转换为 Double .average();

  Double todaypctpnl = openPositionsdata.stream()
                                     .mapToDouble(c->Double.parseDouble(c.getTodaypctpnl()))
                                     .average();
Run Code Online (Sandbox Code Playgroud)

eck*_*kig 6

您查看过OptionalDouble的API 文档吗?

有多种方法可以将其转换回double值,例如:

  • double value = OptionalDouble.orElse(-1)
  • double value = OptionalDouble.orElseThrow(IllegalStateException::new)

ETC。

您必须选择最适合您当前需求的一种。