Android 如何识别json键值是否不可用?

Android 如何识别json键值是否不可用?,android,json,Android,Json,JSON例如: { "example_key1": { "one": 1, "two": 2, "three": 3 }, "example_key2": [ { "four": 4, "five": 5, "six": 6 } ] } if(myJSONObject.has("one")) { num = myJSONObject.optString("one"); } 现在我正在使用web服务

JSON例如:

{
"example_key1": {
    "one": 1,
    "two": 2,
    "three": 3
},
"example_key2": [
    {
        "four": 4,
        "five": 5,
        "six": 6
    }
]
}
if(myJSONObject.has("one")) {
    num = myJSONObject.optString("one");
}
现在我正在使用web服务中的一个方法,该方法返回一些JSON数据,如上面的JSON示例

这里我的问题是,在使用该方法之后,JSON数据中是否缺少一些键值。(比如说“example_key2”上面JSON示例中的JSON值丢失)

从这个意义上说,


如何识别键值是否可用?

您可以使用方法检查特定键值是否可用

JSONObject j = new JSONObject("");
j.has("example_key2");
例如:

{
"example_key1": {
    "one": 1,
    "two": 2,
    "three": 3
},
"example_key2": [
    {
        "four": 4,
        "five": 5,
        "six": 6
    }
]
}
if(myJSONObject.has("one")) {
    num = myJSONObject.optString("one");
}

使用JSONObject类的has方法

对于json数组