所以我最近一直在与Talend合作,每件事都很棒;但是,我一直面临着"NullException"问题。我在数据库中有一个双精度数据类型字段,它可能具有空值。现在我已经在我的例程中尝试了通常的尝试捕获,但仍然抛出 NullException。现在我知道 double 在 Java 中不可为空,我的问题是,如何检查表中那些可能为空的字段的 null(尤其是双精度数据类型(
将双精度数据类型更改为双精度,因为双精度是不接受 null 的原始数据类型,而双精度是类。
将其更改为 Double 后,您可以使用 == 直接检查您的 NULL。
你写的陈述是
if(X.isNaN() || Y.isNaN() || X == null || Y == null ) { return false; }
NullException
与值null
有关,但不NaN
。
要找出差异,您应该先检查null
,然后尝试访问变量中的值,这意味着顺序相反,括号略有不同:
if((X == null || X.isNaN()) || (Y == null || Y.isNaN())) { return false; }