Android对象集合具有相同的值

时间:2016-02-06 05:00:22

标签: android json iteration

我有Json对象的格式为{“result”:{“name”:“ram”,“mark”:“50”},{“name”:“ram”,“mark”:“60”}, {“name”:“ram”,“mark”:“50”},{“name”:“ram”,mark:“50”},{“name”:“ram”,“mark”:“50” },{“name”:“ram”,“mark”:“80”},{“name”:“ram”,“mark”:“50”}}。如何在一个列表中收集具有相同标记的同一组对象以及在不同列表中具有不同标记的其他对象。请帮助...提前感谢。

1 个答案:

答案 0 :(得分:1)

这不是有效的json数据,您可以通过放置json数据在此验证它。 https://jsonformatter.curiousconcept.com/

你的json数据应该是:

{
    "result": [{
        "name": "ram",
        "mark": "50"
    },
    {
        "name": "raj",
        "mark": "60"
    },
    {
        "name": "ramesh",
        "mark": "70"
    },
    {
        "name": "manish",
        "mark": "50"
    },
    {
        "name": "priya",
        "mark": "50"
    },
    {
        "name": "shiv",
        "mark": "80"
    },
    {
        "name": "pankaj",
        "mark": "50"
    }]
}

这个代码就是:

List list = new ArrayList<String>();
JSON Object json = new JSONObject();
if(json.has("result")){
   JSONArray array = json.getJSONArray("result");
   if(array.length() > 0){
     for(int i=0;i<array.length();i++){
     JSONObject result = array.getJSONObject(i);
     list.add(result.getString("mark"));
  }
 }
}