这可能看起来像一个简单的问题,但事实证明这并不是那么容易(或者我找不到任何关于如何做到这一点的信息)。
我只是想将一个IntegerBinding,即Bindings.size(families);
转换为DoubleBinding,这样如果我做这样的Bindings.divide(Bindings.size(families),Bindings.size(familiesAll))
,我就不会得到整数分割的结果。也许还有其他方法可以实现我想要的东西,但转换Bindings是必不可少的事情。
答案 0 :(得分:1)
有两种选择:
Bindings.createDoubleBinding(() ->
1.0 * families.size() / familiesAll.size,
Bindings.size(families), Bindings.size(familiesAll));
或:
Bindings.divide(Bindings.size(families).add(0.0), Bindings.size(familiesAll));
或:
Bindings.size(families).add(0.0).divide(Bindings.size(familiesAll));
或:
DoubleProperty familiesSize = new SimpleDoubleProperty();
familiesSize.bind(Bindings.size(families));
Bindings.divide(familiesSize, Bindings.size(familiesAll));