根据json里的某个key对json数据进行分组
2016-08-08 17:57
447 查看
。。
public static JSONArray subArray(JSONArray array) { try { JSONArray subArray = new JSONArray(); JSONObject obj = null; JSONObject obj2 = null; JSONArray aArray = new JSONArray(); for (int i = 0, size = array.length(); i < size; i++) { obj = array.getJSONObject(i); if (i + 1 < size) { if (i - 1 < 0) { subArray = new JSONArray(); subArray.put(obj); } else { obj2 = array.getJSONObject(i - 1); if (obj.getString("first_category_id").equals(obj2.getString("first_category_id"))) { subArray.put(obj); } else { aArray.put(subArray); subArray = new JSONArray(); subArray.put(obj); } } } else { if (size + 1 > 0) { obj2 = array.getJSONObject(i - 1); if (obj.getString("first_category_id").equals(obj2.getString("first_category_id"))) { subArray.put(obj); if (size - 1 == i) { aArray.put(subArray); } } else { aArray.put(subArray); subArray = new JSONArray(); subArray.put(obj); if (i + 1 == size) { aArray.put(subArray); } } } else { subArray.put(obj); aArray.put(subArray); } } } return aArray; }catch (Exception e){ e.printStackTrace(); return null; } }
相关文章推荐
- struts2 + ajax(由前台的form提交数据到后台,再根据form所调用返回获取的后台json格式的数据返回到前端,然后前端用jquery对json数据进行解析)==》》涉及非文件上传的部分
- js根据json数据中的某一个属性来给数据分组
- 获取map中根据key进行排序的value数据
- 根据经纬度查询地址并对获取的json数据进行解析
- 基于JavaScript实现Json数据根据某个字段进行排序
- 基于JavaScript实现Json数据根据某个字段(json中的某个属性)进行排序
- 根据经纬度查询地址并对获取的json数据进行解析
- 基于JavaScript实现Json数据根据某个字段进行排序
- JSON数组去重 * @param: [array] json Array * @param: [string] 唯一的key名,根据此键名进行去重
- Map转成JSON数据,根据key排序问题
- Ajax中根据json数据不同,对页面上的单选框Radio进行回显
- Android编程实现根据经纬度查询地址并对获取的json数据进行解析的方法
- ajax 中根据json数据不同 对页面中 选择框radio 进行动态选择
- struts2 + ajax(由前台的form提交数据到后台,再根据form所调用返回获取的后台json格式的数据返回到前端,然后前端用jquery对json数据进行解析)==》》涉及文件上传的部分
- 掌握 Ajax,第 10 部分: 使用 JSON 进行数据传输
- 如何:对 JSON 数据进行序列化和反序列化
- 字符串处理--根据key值进行replace
- 如何对memcache的数据(key-value)进行遍历操作
- 使用 JSON 进行数据传输
- 掌握 Ajax,第 10 部分: 使用 JSON 进行数据传输