fastjson合并json数组中相同的某个元素

Posted kankankankankan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了fastjson合并json数组中相同的某个元素相关的知识,希望对你有一定的参考价值。

/**
 * @param array JSON数组
* @param array 需合并后的某个元素名
 */
private static JSONArray mgreArray(JSONArray array, String arrayname) {
        Map<Integer, JSONObject> map = new HashMap<>();
        for (int i = 0; i < array.size(); i++) {
            JSONObject jsonObject = array.getJSONObject(i);
            Integer id = jsonObject.getIntValue("id"); //合并的条件值
            if (map.containsKey(id)) {
                JSONObject tmp = map.get(id);
                JSONArray detailList = tmp.getJSONArray(arrayname);
                detailList.addAll(jsonObject.getJSONArray(arrayname));
            } else {
                map.put(id, jsonObject);
            }
        }
        JSONArray newArray = new JSONArray();
        newArray.addAll(map.values());
        return newArray;
}

 

以上是关于fastjson合并json数组中相同的某个元素的主要内容,如果未能解决你的问题,请参考以下文章