如何在Java中使用org.json.JSONObject将值设置为null?
如何在Java中使用org.json.JSONObject将值设置为null?我肯定可以通过使用isNull来读取值是否为null,但是当我将其设置为null时,它只会忽略我:
JSONObject o = new JSONObject();o.put("key",null);
o.isNull("key"); // returns true, buuuut...
o.has("key"); // returns false
o.isNull("somethingIHaventSetAtAll"); // also returns true, unfortunately
回答:
尝试设置JSONObject.NULL
而不是null
:
用于明确定义没有值的名称的哨兵值。与null不同,具有以下值的名称:
- 显示在names()数组中
- 出现在keys()迭代器中
- 为has(String)返回true
- 不要抛出get(String)
- 包含在编码的JSON字符串中。
与null相比,此值返回true违反了equals(Object)的一般协定。其toString()方法返回“ null”。
以上是 如何在Java中使用org.json.JSONObject将值设置为null? 的全部内容, 来源链接: utcz.com/qa/414444.html