Android JSON多对解析

Android JSON多对解析,android,json,Android,Json,我有一个像这样的JSONObject {“message”:{“context”:“ws”、“data”:“id”:“12345”、“http_accept”:“json”、“method”:“GET”、“search_key”:“cat”},“response”:{“1”:“cat”、“2”:“catte”},“status”:“OK”、“code”:200} 我正在尝试获取搜索Web服务的结果。我想要“response”键中的对的值将它们添加到ArrayList中 例如,从这个“回应”中,我

我有一个像这样的JSONObject

{“message”:{“context”:“ws”、“data”:“id”:“12345”、“http_accept”:“json”、“method”:“GET”、“search_key”:“cat”},“response”:{“1”:“cat”、“2”:“catte”},“status”:“OK”、“code”:200}

我正在尝试获取搜索Web服务的结果。我想要“response”键中的对的值将它们添加到ArrayList中


例如,从这个“回应”中,我想要“猫”和“猫”。如何解析它们?

“response”的结构是map。您可以使用Gson轻松解析它

使用JSON
迭代器
循环所有键并收集
响应

JSONObject root = new JSONObject(jsonInput);
JSONObject resp = root.getJSONObject("response");

List<String> respList = new ArrayList<String>();
for (Iterator<String> iterator = resp.keys(); iterator.hasNext();) {
    String key = iterator.next();
    respList.add(resp.getString(key));
    System.out.println(key + " = " + resp.getString(key));
}
System.out.println(respList);
JSONObject root=新的JSONObject(jsonInput);
JSONObject resp=root.getJSONObject(“响应”);
List respList=new ArrayList();
for(Iterator Iterator=resp.keys();Iterator.hasNext();){
String key=iterator.next();
add(resp.getString(key));
System.out.println(key+“=”+resp.getString(key));
}
系统输出打印项次(respList);
输出:

1=猫
2=猫
[猫,猫]


abt是如何在collection和serach上解析它们的?itor尝试使用Gson,请查看Gson的工作原理示例