java - 如何测试 JSONObject 是否为空或不存在

我有一组从服务器接收并操作的 JSONObject 值。大多数时候我得到一个带有值的 JSONObject (比如说统计数据),有时,它返回一个带有代码和错误描述的 Error 对象。

我如何构造我的代码,以便它在返回错误时不会中断。我以为我可以做到这一点,但不起作用。

public void processResult(JSONObject result) {
    try {
        if(result.getJSONObject(ERROR) != null ){
            JSONObject error = result.getJSONObject(ERROR);
            String error_detail = error.getString(DESCRIPTION);
            if(!error_detail.equals(null)) {
                //show error login here
            }
            finish();
        }
        else {
            JSONObject info = result.getJSONObject(STATISTICS);
            String stats = info.getString("production Stats"));
        }
    }
}

最佳答案

使用 .has(String).isNull(String)

保守的用法可能是;

    if (record.has("my_object_name") && !record.isNull("my_object_name")) {
        // Do something with object.
      }

https://stackoverflow.com/questions/12585492/

相关文章:

javascript - 如何使用 underscore.js 生成扁平化结果

json - SQL Server OPENJSON 读取嵌套的 json

php - 如何在 PHP 5.3.0 之前验证 JSON?

java - 在java中将JSON类型转换为字节数组格式

json - 调用 Web API 2 端点时出现 HTTP 415 不支持的媒体类型错误

javascript - 为什么 JSON 很重要?

python - 将 JSON 文件读入 Spark 时出现 _corrupt_record 错误

json - 使用 jq 就地修改 json 中的键值

android - 如何在 Android 中解析 JSON 对象

javascript - 将 JSON 对象推送到 localStorage 中的数组