JSON是一種輕量級數據交換格式,已經在各種編程語言中被廣泛使用,包括Java。Java中調用JSON語法的方法十分簡單,只需要導入org.json庫即可。
首先是將JSON格式字符串轉換為Java對象或Map。可以使用JSONObject類來實現,該類提供了一系列靜態方法用于在Java對象與JSON字符串之間進行轉換。
String jsonStr = "{\"name\":\"John\", \"age\":30}"; JSONObject jsonObj = new JSONObject(jsonStr); String name = jsonObj.getString("name"); int age = jsonObj.getInt("age");
轉換為Map也十分簡單,利用JSON文本構造一個JSONObject對象,然后調用JSONObject的toMap()方法:
String jsonStr = "{\"name\":\"John\", \"age\":30}"; JSONObject jsonObj = new JSONObject(jsonStr); Map<String,Object> hashMap = jsonObj.toMap();
接下來是將Java對象或Map轉換為JSON格式字符串。也是使用JSONObject類,其提供了一系列靜態方法用于將Java對象或Map轉換為JSON格式字符串。
Map<String,Object> hashMap = new HashMap<>(); hashMap.put("name", "John"); hashMap.put("age", 30); String jsonStr = JSONObject.valueToString(hashMap);
如果需要格式化輸出JSON,則可以使用靜態方法toString()或toString(int indentFactor)方法,該方法帶有縮進因子,并將JSON格式化輸出。
String jsonStr = "{\"name\":\"John\", \"age\":30}"; JSONObject jsonObj = new JSONObject(jsonStr); String jsonPretty = jsonObj.toString(4);
總結一下,Java中通過導入org.json庫,使用JSONObject類即可輕松實現對JSON格式字符串與Java對象或Map之間的轉換。更多關于org.json庫的使用請參考官方文檔。