null值为引发NullPointerException的日期
if (aDate.after(cottageHospital.getLastWardChangeDate(thePatient)))
{
Ward newWard = (Ward) changeWardNewWardList.getSelectedValue();
changeWardArea.setText("Patient " + thePatient + " moved to " +
newWard + "ward.");
cottageHospital.changeWard(thePatient, newWard, aDate);
}
我有一个if语句,它是更大方法的一部分,该语句将日期aDate与另一个日期值进行比较。 问题是,第一次使用此方法时,aDate尝试比较的日期为null,并抛出NullPointerExCeption。
处理这个异常的最好方法是什么?
您可以添加空检查:
theDate = cottageHospital.getLastWardChangeDate(thePatient);
if (theDate != null && aDate.after(theDate))
你不应该处理异常,但要确保它完全不出现 - >确保aDate永远不为null。 如果这不可行,请在比较前添加空检查。
空检查看起来像这样:
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永远不会为空。
链接地址: http://www.djcxy.com/p/13269.html