与java中的空值进行比较时出现NullPointerException

pra*_*ver 0 java null if-statement exception nullpointerexception

if(status.equals(null))
{
  status="Pass";
}
Run Code Online (Sandbox Code Playgroud)

从上面的代码中抛出NullPointerException,请给出比较值的解决方案null.

Mar*_*oun 6

看起来就像statusnull.所以当你这样做时:

status.equals("null")
Run Code Online (Sandbox Code Playgroud)

你实际上在做:

null.equals("null")
Run Code Online (Sandbox Code Playgroud)

这导致NPE.你应该做:

if(status == null) //Now you're checking if the reference is null
                   //So you'll never dereference a null pointer
Run Code Online (Sandbox Code Playgroud)

您可能会发现此链接很有用.


相关主题:

Java中的null是什么?
Java null检查为什么使用==而不是.equals()