抛出NullPointerException的日期的null值

时间:2015-08-19 19:11:44

标签: java date nullpointerexception

              total        used        free      shared  buff/cache   available
Mem:           3945        1227         684          44        2034        2397

我有一个if语句,它是更大方法的一部分,该语句将日期aDate与另一个日期值进行比较。问题是,第一次使用此方法时aDate尝试比较的日期为null,抛出NullPointerException。

处理此异常的最佳方法是什么?

2 个答案:

答案 0 :(得分:1)

您不应该处理异常,但要确保它根本不显示 - >确保aDate永远不会为空。如果无法做到这一点,请在比较之前添加空检查。

空检查看起来像这样:

if (aDate != null && aDate.after(cottageHospital.getLastWardChangeDate(thePatient))) {
    Ward newWard = (Ward) changeWardNewWardList.getSelectedValue();
    changeWardArea.setText("Patient " + thePatient + " moved to " + newWard + "ward.");
    cottageHospital.changeWard(thePatient, newWard, aDate);
}

更清洁的方法是确保aDate永远不会为空。

答案 1 :(得分:0)

您可以添加空检查:

theDate = cottageHospital.getLastWardChangeDate(thePatient);
if (theDate != null && aDate.after(theDate))