查找JSONObject是否包含特定的JSONARray

时间:2017-03-29 13:02:41

标签: java json

我正在开发一个spring MVC应用程序。我正在使用org.json jar来处理jsonObjects。我试图找到JSONObject是否包含JSON数组。任何人都可以帮助我:

假设我有一个JSON对象:

{"Object":{
   "array":["",""]
}
}

所以我想知道json对象中是否存在数组,因为有时候JSONObject会是:

{"Object":{
   "array11":["",""]
}
}

请帮帮我。

2 个答案:

答案 0 :(得分:0)

您可以使用org.json(https://github.com/stleary/JSON-java)来执行此操作。您只需使用此代码即可创建JSON对象:

JSONObject object = new JSONObject(String);

然后您可以使用 isNull(String)方法检查对象中是否存在值。你可以使用 getJSONArray(String)方法获取数组,创建一个循环(例如for循环)并循环遍历数组(接受int而不是字符串)。

答案 1 :(得分:0)

根据org.json JSON库的javadocs,JSONObject有一个optJSONArray()方法,如果您所定位的密钥不存在,不会抛出异常该键的值不是JSON数组。对于JSONObject" foo":

JSONArray array = foo.optJSONArray("array");
if (array != null) {
    // do stuff with the array
}