java将json转为hashmap_将JSON字符串转换为HashMap

小编典典

我几天前通过递归编写了这段代码。

public static Map jsonToMap(JSONObject json) throws JSONException {

Map retMap = new HashMap();

if(json != JSONObject.NULL) {

retMap = toMap(json);

}

return retMap;

}

public static Map toMap(JSONObject object) throws JSONException {

Map map = new HashMap();

Iterator keysItr = object.keys();

while(keysItr.hasNext()) {

String key = keysItr.next();

Object value = object.get(key);

if(value instanceof JSONArray) {

value = toList((JSONArray) value);

}

else if(value instanceof JSONObject) {

value = toMap((JSONObject) value);

}

map.put(key, value);

}

return map;

}

public static List toList(JSONArray array) throws JSONException {

List list = new ArrayList();

for(int i = 0; i < array.length(); i++) {

Object value = array.get(i);

if(value instanceof JSONArray) {

value = toList((JSONArray) value);

}

else if(value instanceof JSONObject) {

value = toMap((JSONObject) value);

}

list.add(value);

}

return list;

}

2020-03-11


版权声明:本文为weixin_42132352原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。