java - 检查 JSON 节点是否为 null

标签 java android json

我从 api 返回一些 JSON,根对象的子节点之一是 item

我想检查该节点的值是否为空。这是我正在尝试的操作,当节点实际上为 null 时,当前会抛出 JSONException:

if (response.getJSONObject("item") != null) {

// do some things with the item node

} else {

// do something else

}

日志猫

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

请注意,this item 节点不仅仅是一个字符串值,而且是一个子对象。预先感谢您!

最佳答案

对 JsonNode 字段进行正确的 null 检查:

JsonNode jsonNode = response.get("item");

if(jsonNode == null || jsonNode.isNull()) { }

该项目要么不存在于响应中,要么明确设置为 null 。

关于java - 检查 JSON 节点是否为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24899554/

相关文章:

java - Android应用程序类充当单例?

java - 需要对此 Java 语法的解释

java - Cloudera 中的 Hive 可以在没有数据库(如 Mysql、Oracle)的情况下工作吗

android - 未找到 JNI_load..应用程序关闭并在循环中运行

android - 在 Android 中以编程方式删除色调颜色

java - 简单更改后 REST 服务不起作用

c# - 使用 CURL 发送到 Azure 函数的 Newtonsoft 反序列化 JSON 时出现异常

Java执行弹出新窗口后立即消失

Android 应用程序在解析 JSON 时崩溃

json - 如何从 Medium.com 帖子中提取作者信息