JSONObject isNullObject()和null之间存在差异

时间:2017-09-13 16:14:20

标签: java json

我需要知道这两个代码之间有什么区别

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

代码1:

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

代码2:

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

1 个答案:

答案 0 :(得分:-1)

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

  1. First检查对象是否为空JSONObject

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

    if(json2 != null){
      //statement
    }
    
  3. 了解JSONObject.NULL代表的内容也很有用。

      

    拥有NULL对象有时比使用Java的null值更方便,更不明确。 JSONObject.NULL.equals(null)   返回trueJSONObject.NULL.toString()会返回"null"

    使用更新的库,您会发现使用 isNull 比您的方法更方便。