【发布时间】:2015-06-26 14:23:11
【问题描述】:
我正在使用.before() 函数来确保旧值小于新值,但问题是我允许用户在这两个值中的任何一个中有空值,所以当.before() 将值与null... 失败了。
我的代码:
public getDetails(Calendar older, Calendar newer) {
if (older.before(newer)) {
System.out.println("Works");
} else {
System.out.println("Works");
}
}
我想到的另一种方法是检查任何值是否为 null 并让函数通过。
所以我尝试了:
if ((older || newer) == null || older.before(newer))
有没有更简洁更快捷的方法来做到这一点?
【问题讨论】:
-
您允许用户输入
null有什么特别的原因吗?处理这种情况似乎不是您的功能目的的一部分,因此您可能根本不应该允许它发生。 -
@RedRoboHood 是的,我正在处理空值以提取不同的列表,因此用户可以将其中一个或两个都作为空值
-
“拉不同的列表”是什么意思?
-
@RedRoboHood 例如,如果未输入较新的日期。我正在提取一个列表,其中包括截至旧日期等的所有详细信息。
标签: java function if-statement logic