当我使用:
输出时,我从doseTimeString得到一个空值 Log.d("dosetimeString", "" + dosetimeString);
但如果我在这一行使用if条件,它会给我一个NullPointerException:
if (dosetimeString.equals("null") || dosetimeString == null
|| dosetimeString.equals("")) {
}
答案 0 :(得分:4)
在if语句的这一位发生NullPointerException:
dosetimeString.equals("null")
因为你在null对象上调用一个方法,并且正如Roflcoptr所说,如果你真的需要所有那些测试,你应该读取该行:
if (dosetimeString == null || dosetimeString.equals("null") || dosetimeString.equals("")) {
但是,如果您只想检查它是否为空,则只需要第一个条件。
if (dosetimeString == null) {
答案 1 :(得分:1)
这是因为首先要测试
dosetimeString.equals("null")
你试图访问变量dosetimeString,它是null。
所以只需使用:
dosetimeString == null
答案 2 :(得分:1)
那是因为dotimeString为null。您无法访问空对象上的成员函数!
在dotimeString.equals(“null”)之前放置doestieSString == null,你应该没问题。
if (dosetimeString == null || dosetimeString.equals("null") || dosetimeString.equals("")){
}