public Map<String, Object> parseJSON2Map(JSONObject json) { Map<String, Object> map = new HashMap<String, Object>(); // 最外层解析 for (Object k : json.keySet()) { Object v = json.get(k); // 如果内层还是json数组的话,继续解析 if (v instanceof JSONArray) { List<Object> list = new ArrayList<Object>(); Iterator<JSONObject> it = ((JSONArray) v).iterator(); while (it.hasNext()) { Object object = it.next(); if (object instanceof JSONArray || object instanceof JSONObject) { list.add(parseJSON2Map((JSONObject)object)); } else { list.add(object); } } map.put(k.toString(), list); } else if (v instanceof JSONObject) { // 如果内层是json对象的话,继续解析 map.put(k.toString(), parseJSON2Map((JSONObject) v)); } else { // 如果内层是普通对象的话,直接放入map中 map.put(k.toString(), v); } } return map; }
复杂json转List、map嵌套的工具类
最新推荐文章于 2024-02-06 10:24:34 发布