2017-09-13 108 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