2017-09-13 71 views
-1

我需要知道的是什么差异性()和空

JSONObject json = new JSONObject(); 
json.put("key1",null); 
JSONObject json2 = json.getJSONObject("key1"); 

码这两个码的区别1:

if(!json2.isNullObject()){ 
    //statement 
} 

代码2:

if(json2 != null){ 
    //statement 
} 
+2

您可能想提及您在问题和代码中使用的语言和JSON库。 – pvg

+0

@Benasir Banu解决方案是否有共同的帮助?你有机会尝试一下吗? – nullpointer

回答

-1

TL; DR:这两个代码对相同的条件进行反向检查。

  1. First检查如果对象是一个空JSONObject与否。

    if(json2.isNullObject()){ 
        //statement 
    } 
    
  2. 其次检查是否返回的JSONObject不为空。

    if(json2 != null){ 
        //statement 
    } 
    

这也将是有益知道JSONObject.NULL代表。

使用NULL对象有时比使用Java的null值更方便,也更模糊。 JSONObject.NULL.equals(null) 返回trueJSONObject.NULL.toString()返回"null"

并与最新的库,你会发现使用的isNull比你的两个方法更方便。

+0

downvote的原因是什么? – nullpointer