我正在从 api 返回一些 JSON,根对象的子节点之一是item.
我想检查这个节点的这个值是否为空。这是我正在尝试的,JSONException当节点实际上为空时,它当前正在抛出一个:
if (response.getJSONObject("item") != null) {
// do some things with the item node
} else {
// do something else
}
Run Code Online (Sandbox Code Playgroud)
逻辑猫
07-22 19:26:00.500: W/System.err(1237): org.json.JSONException: Value null at item of type org.json.JSONObject$1 cannot be converted to JSONObject
Run Code Online (Sandbox Code Playgroud)
请注意, thisitem节点不仅仅是一个字符串值,而是一个子对象。先感谢您!
小智 9
要对 JsonNode 字段进行正确的空检查:
JsonNode jsonNode = response.get("item");
if(jsonNode == null || jsonNode.isNull()) { }
该项目要么不存在于响应中,要么显式设置为 null 。
好的,所以如果节点始终存在,您可以使用 .isNull() 方法检查 null。
if (!response.isNull("item")) {
// do some things with the item node
} else {
// do something else
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
28115 次 |
| 最近记录: |