gpt4 book ai didi

Java:检查日期选择器是否有值错误

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:36:36 25 4
gpt4 key购买 nike

我有一个

DatePicker date = new DatePicker();
date.setValue(LocalDate.now());

该字段仍然是手动可编辑的,因此您只需删除初始设置值即可。

我有一个按钮,我想用它来检查 DatePicker 值是否为空。但是当我执行 if(date.getValue().equals(null) 时,我得到一个 java.lang.NullPointerException:

Button btn = new Button();
btn.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent evt) {
if(date.getValue().equals(null) {
// do something
}
}
});

如何正确检查值是否为空?

最佳答案

if (date.getValue().equals(null) { ... }

如果该值确实是一个null,您将得到一个NullPointerException 异常。所以,你最好这样写:

if (date.getValue() == null) { ... }

请记住,如果您使用 equals,您应该确保表达式的左侧部分(调用此方法的实例)永远不会呈现 null (像常量、String 文字、枚举一样)。


此外,为了简洁起见,您可以自由地将匿名类替换为 lambda:

btn.setOnAction(event -> { ... });

此外,如果当前为 null(例如 LocalDate.now()),则有一种很好的单行方式来设置默认值:

datePicker.setValue(Optional.ofNullable(datePicker.getValue()).orElse(LocalDate.now()));

关于Java:检查日期选择器是否有值错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41209899/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com