ReactFX:无法从 DoubleProperty 构建 EventStream

ReactFX: can't build EventStream from DoubleProperty

我正在尝试从 ReactFX 中的 DoubleProperty 生成 EventStream(我已经尝试了 2.0M5 和 1.4.1 稳定版)。我经常从 IntelliJ 收到此错误:

我试过使用 wiki 中的示例代码:

Circle streamCircle = new Circle();
EventStream<Double> widthValues = EventStreams.nonNullValuesOf(streamCircle.radiusProperty());

...我得到同样的错误。

我做错了什么?

DoublePropertyIntegerProperty 和类似的属性实现 ObservableValue<Number>,而不是 ObservableValue<Double>ObservableValue<Integer>

您可以使用 asObject 转换为这样的类型:

EventStream<Double> widthValues = EventStreams.nonNullValuesOf(streamCircle.radiusProperty().asObject());

但是如果我正确理解了 nonNullValuesOf 应该做什么,您应该将其替换为 EventStreams.valuesOf,因为 DoubleProperty never包含 null 作为值。