Java的Map可以方便地處理JSON。這是因為JSON本質(zhì)上就是一組鍵值對,而Map的實現(xiàn)也是基于鍵值對。下面介紹如何使用Map處理JSON。
import com.alibaba.fastjson.JSONObject; import java.util.Map; public class JsonMapDemo { public static void main(String[] args) { String jsonStr = "{\"name\":\"張三\",\"age\":20}"; // 將 JSON 字符串轉(zhuǎn)換為 Map Mapmap = JSONObject.parseObject(jsonStr, Map.class); // 獲取 Map 中的數(shù)據(jù) String name = (String) map.get("name"); int age = (int) map.get("age"); System.out.println("name: " + name); System.out.println("age: " + age); // 將 Map 轉(zhuǎn)換為 JSON 字符串 String mapJsonStr = JSONObject.toJSONString(map); System.out.println("mapJsonStr: " + mapJsonStr); } }
該示例中,先將一個JSON字符串轉(zhuǎn)換為Map。轉(zhuǎn)換使用了阿里巴巴的fastjson庫,調(diào)用了JSONObject的parseObject方法。將JSON字符串和Map.class傳入方法即可。轉(zhuǎn)換后,可以通過get方法獲取Map中的數(shù)據(jù)。
然后將Map重新轉(zhuǎn)換為JSON字符串,同樣使用了fastjson庫的toJSONString方法,傳入Map即可。
通過這種方法,可以方便地將JSON字符串轉(zhuǎn)換為Map,或?qū)ava中的Map對象轉(zhuǎn)換為JSON字符串。這在處理Web服務響應數(shù)據(jù)等場景中非常實用。