java中jsonobject怎么转map

avatar
作者
猴君
阅读量:0

要将一个JSONObject转换为Map,可以使用以下方式:

import org.json.JSONObject;  import java.util.HashMap; import java.util.Iterator; import java.util.Map;  public class Main {     public static void main(String[] args) {         JSONObject jsonObject = new JSONObject("{\"name\":\"John\", \"age\":30}");          Map<String, Object> map = jsonToMap(jsonObject);          System.out.println(map);     }      private static Map<String, Object> jsonToMap(JSONObject jsonObject) {         Map<String, Object> map = new HashMap<>();          Iterator<String> keys = jsonObject.keys();         while (keys.hasNext()) {             String key = keys.next();             Object value = jsonObject.get(key);              if (value instanceof JSONObject) {                 value = jsonToMap((JSONObject) value);             }              map.put(key, value);         }          return map;     } } 

在上面的代码中,首先我们创建了一个JSONObject对象,然后调用jsonToMap方法将其转换为Map。jsonToMap方法使用递归的方式将JSONObject转换为Map,如果JSONObject中的value也是JSONObject,则继续递归调用jsonToMap方法。最终将转换后的Map打印出来。

输出结果为:{name=John, age=30}

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!