我正在获取以下程序的空指针异常

Abd*_*eer -3 java variables session if-statement nullpointerexception

    /*line 1.*/ 
    if((name!=null || address!=null)||(!(name.equals("")||address.equals("")))){


        sessionNameModel.setObject(""+name);
        sessionAddressModel.setObject(""+address);
        add(sessionName);
        add(sessionAddress);

    }
    else{
        sessionNameModel.setObject("");
        sessionAddressModel.setObject("");
        add(sessionName);
        add(sessionAddress);

    }
Run Code Online (Sandbox Code Playgroud)

我在第1行得到空指针异常.我知道名称和地址字段的值为null但我必须检查会话更新值时的情况.我需要知道如何检查这些变量名称和地址是否为空.

alf*_*sin 5

假设您的情况正确,请更改:

if((name!=null || address!=null)||(!(name.equals("")||address.equals("")))){
Run Code Online (Sandbox Code Playgroud)

至:

if((name!=null || address!=null)||(!("".equals(name)||"".equals(address)))){
Run Code Online (Sandbox Code Playgroud)

说明:
通过使用"".equals(name)你保证即使namenull(因为你||在前一个表达式中使用它是可能的),比较将返回false而不是NPE.同样如此address.