【问题标题】:Java: JSONObject isNull method doesn't work correctlyJava:JSONObject isNull 方法无法正常工作
【发布时间】:2020-12-07 09:23:31
【问题描述】:

我需要你的帮助。我有 JSONObject 之类的

 JSONObject base = {"json" : {"key1" : "somethings", "key2" : null}}

我写过这样的代码

JSONObject json = base.getJSONObject("json");

json.isNull("key2") // false

json.get("key2").getClass() // class.org.json.JSONObject$Null
json.opt("key2").getClass() // class.org.json.JSONObject$Null
JSONObject.NULL.getClass() // class.org.json.JSONObject$Null
json.get("key2").equals(JSONObject.NULL) // false

仅适用:

 json.get("key2").equals(null) // true

在 isNull() 正常工作之前,我在 JSON 中更改了一些逻辑结构时出现了问题。可能发生了什么或改变了什么?

【问题讨论】:

  • 我已经找到了原因,在我把这个 JSONobject 缓存(带有该字段的其他包装类)之前,没有它可以正常工作,但无论如何我不明白,为什么它会发生在缓存

标签: java json null isnull


【解决方案1】:

你试过通过构造函数实例化 JSON 对象吗?:

JSONObject base = new JSONObject ("{\"json\" : {\"key1\" : \"somethings\", \"key2\" : null}}")

【讨论】:

  • 实际上我从 API 中得到它我已经找到了原因,在我把这个 JSONobject 缓存(带有该字段的其他包装类)之前,没有它可以正常工作,但无论如何我没有明白,为什么会发生在缓存中
猜你喜欢
  • 2019-04-13
  • 2019-06-02
  • 2021-12-29
  • 2014-09-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多