如果我这样做:
BooleanProperty b = new SimpleBooleanProperty();
b.setValue(null);
System.out.println(b.getValue());
Run Code Online (Sandbox Code Playgroud)
我收到输出:
false
Run Code Online (Sandbox Code Playgroud)
如何设置SimpleBooleanProperty值null?设置SimpleBooleanProperty为null(BooleanProperty b = null;)是个坏主意,因为我会使用绑定.
我创立了这样的方式:
ObjectProperty<Boolean> b = new SimpleObjectProperty<Boolean>(null);
System.out.println(b.getValue());
Run Code Online (Sandbox Code Playgroud)
工作良好.
我不能回答我的问题,所以我把它放在这里,对不起.
SimpleBooleanProperty是boolean(原始)的包装器- 空值自动设置为默认(false)值.
如果要允许null值,可以使用ObjectProperty<Boolean> b = new SimpleObjectProperty<> ();.缺点是您丢失了默认的布尔绑定.
或者,您可以创建一个覆盖现有setValue实现的自定义类,但这可能有点复杂,因为它依赖于set(boolean)显然无法接受的方法null...
| 归档时间: |
|
| 查看次数: |
3462 次 |
| 最近记录: |