何时a=null和b=null它抛出NPE.
String a,b;
if ((aValue.equals("null")||aValue==null||aValue.isEmpty()) &&
(!bValue.equals("null")||bValue!=null || !bValue.isEmpty()))
Run Code Online (Sandbox Code Playgroud)
我想检查什么时候没有值而b有价值.如何在没有任何库的情况下使其正常有效.
aValue==null必须先检查,因为表达式是从左到右计算的,并aValue.equals("null")会抛出一个NullPointerExceptionif aValue==null.
检查bValue应该&&在它们之间具有(AND)条件,因为您需要bValue具有值.同样,bValue!=null应该先评估.
if ((aValue==null||aValue.equals("null")||aValue.isEmpty()) &&
(bValue!=null && !bValue.equals("null") && !bValue.isEmpty()))
Run Code Online (Sandbox Code Playgroud)
顺便说一句,您是否期望aValue或bValue永远包含String"空"?这样的价值会代表"没有价值"吗?如果情况并非如此,则.equals("null")不需要进行测试.