如何检查是否存在json密钥?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (12)

所以,我从服务器获得一些JSON值,但我不知道是否会有特定的字段。

如此:

{ "regatta_name":"ProbaRegatta",
  "country":"Congo",
  "status":"invited"
}

有时候,会有一个额外的字段,如:

{ "regatta_name":"ProbaRegatta",
  "country":"Congo",
  "status":"invited",
  "club":"somevalue"
}

我想检查是否存在名为“俱乐部”的字段,以便在解析时我不会得到org.json.JSONException:club没有价值

提问于
用户回答回答于

可以通过这种方式检查'HAS' - 如果此对象具有名称映射,则返回true。映射可能是NULL。

     if (json.has("status")) {
        String status = json.getString("status"));
     }
     if (json.has("club")) {
        String club = json.getString("club"));
     }

还可以使用'isNull'进行检查 - 如果此对象没有名称映射或映射值为NULL,则返回true。

 if (!json.isNull("club"))
     String club = json.getString("club"));

扫码关注云+社区