欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

java json 遞歸轉(zhuǎn) map

吉茹定1年前9瀏覽0評論

Java中的JSON庫中提供了一個遞歸轉(zhuǎn)換Map對象的方法,具體實現(xiàn)如下:

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONException;
import com.alibaba.fastjson.JSONObject;
import java.util.HashMap;
import java.util.Map;
public class JsonUtil {
public static MapjsonToMap(JSONObject json) throws JSONException {
Mapmap = new HashMap<>();
for (String key : json.keySet()) {
Object value = json.get(key);
if (value instanceof JSONArray) {
map.put(key, jsonToList((JSONArray) value));
} else if (value instanceof JSONObject) {
map.put(key, jsonToMap((JSONObject) value));
} else {
map.put(key, value);
}
}
return map;
}
public static MapjsonToMap(String jsonStr) throws JSONException {
JSONObject json = JSONObject.parseObject(jsonStr);
return jsonToMap(json);
}
private static Object jsonToList(JSONArray array) throws JSONException {
return array.stream()
.map(o ->{
if (o instanceof JSONArray) {
return jsonToList((JSONArray) o);
} else if (o instanceof JSONObject) {
return jsonToMap((JSONObject) o);
} else {
return o;
}
})
.toArray();
}
}

該方法接收一個JSONObject或json字符串作為參數(shù),并返回一個Map對象。在方法內(nèi)部,如果value是JSONArray或JSONObject類型,則采用遞歸方式處理,并使用put方法將key-value對放入map中。

使用該方法將JSON轉(zhuǎn)換為Map對象,可以方便地對JSON進行操作和處理,比如數(shù)據(jù)篩選、查找、轉(zhuǎn)換等。