如果编译以下代码会给出以下错误。怎么解决这个问题
错误:不兼容的类型:OptionalDouble无法转换为Double .average();
Double todaypctpnl = openPositionsdata.stream()
.mapToDouble(c->Double.parseDouble(c.getTodaypctpnl()))
.average();
您是否看过OptionalDouble的API文档?
有几种方法可以将它转换回double
值,例如:
double value = OptionalDouble.orElse(-1)
double value = OptionalDouble.orElseThrow(IllegalStateException::new)
等等
您必须选择最适合您当前需求的一个。
https://docs.oracle.com/javase/tutorial/collections/streams/reduction.html
Double todaypctpnl = openPositionsdata.stream()
.mapToDouble(c->Double.parseDouble(c.getTodaypctpnl()))
.average().getAsDouble();