中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

java中jsonobject轉hashmap怎么實現

小億
319
2024-01-12 19:32:43
欄目: 編程語言

在Java中,可以使用Jackson庫將JSONObject轉換為HashMap。下面是一個簡單的示例:

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.JsonNode;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

public class Main {
    public static void main(String[] args) {
        String json = "{\"name\":\"John\",\"age\":30,\"city\":\"New York\"}";

        ObjectMapper objectMapper = new ObjectMapper();
        try {
            // 將JSON字符串轉換為JsonNode對象
            JsonNode jsonNode = objectMapper.readTree(json);

            // 將JsonNode轉換為HashMap
            HashMap<String, Object> hashMap = convertJsonNodeToHashMap(jsonNode);

            // 打印HashMap
            for (Map.Entry<String, Object> entry : hashMap.entrySet()) {
                System.out.println(entry.getKey() + ": " + entry.getValue());
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static HashMap<String, Object> convertJsonNodeToHashMap(JsonNode jsonNode) {
        HashMap<String, Object> hashMap = new HashMap<>();

        Iterator<Map.Entry<String, JsonNode>> iterator = jsonNode.fields();
        while (iterator.hasNext()) {
            Map.Entry<String, JsonNode> entry = iterator.next();
            String key = entry.getKey();
            JsonNode value = entry.getValue();

            // 處理嵌套的JsonNode
            if (value.isObject()) {
                hashMap.put(key, convertJsonNodeToHashMap(value));
            } else {
                hashMap.put(key, value.asText());
            }
        }

        return hashMap;
    }
}

上述代碼使用Jackson庫中的ObjectMapper類將JSON字符串轉換為JsonNode對象。然后,使用遞歸方法convertJsonNodeToHashMapJsonNode對象轉換為HashMap對象。該方法遍歷JsonNode的字段,并根據字段類型處理對應的值。

注意:在使用上述代碼之前,需要先引入Jackson庫的依賴。

0
璧山县| 山西省| 武清区| 巧家县| 郓城县| 贺州市| 乐亭县| 宽城| 五寨县| 竹北市| 邯郸县| 嵊泗县| 茶陵县| 涿鹿县| 怀安县| 襄汾县| 中卫市| 营山县| 西城区| 太湖县| 银川市| 淮北市| 西畴县| 宁津县| 盐亭县| 枞阳县| 莆田市| 泸溪县| 舒城县| 佳木斯市| 兴隆县| 民乐县| 红河县| 桓台县| 鄂尔多斯市| 吴旗县| 云南省| 孝义市| 鞍山市| 彰武县| 福建省|