JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,具有易讀性和易解析性。Java語言中提供了JSONObject和JSONArray兩個類來處理JSON數據。
JSONObject類可以將一個JSON字符串轉換為JSONObject對象,也可以通過put()方法來動態添加JSON數據項。例如:
String jsonString = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}"; JSONObject jsonObject = new JSONObject(jsonString); jsonObject.put("gender", "male");
JSONArray類可以將一個JSON字符串轉換為JSONArray對象,也可以通過add()方法來添加JSON數組元素。例如:
String jsonString = "[{\"name\":\"John\", \"age\":30}, {\"name\":\"Jane\", \"age\":25}]"; JSONArray jsonArray = new JSONArray(jsonString); JSONObject jsonObject = new JSONObject(); jsonObject.put("name", "Tom"); jsonObject.put("age", 35); jsonArray.add(jsonObject);
JSONObject和JSONArray類還可以通過toString()方法將JSONObject對象和JSONArray對象轉換為JSON字符串。例如:
String jsonString = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}"; JSONObject jsonObject = new JSONObject(jsonString); String jsonString2 = jsonObject.toString(); String jsonString3 = "[{\"name\":\"John\", \"age\":30}, {\"name\":\"Jane\", \"age\":25}]"; JSONArray jsonArray = new JSONArray(jsonString3); String jsonString4 = jsonArray.toString();
在處理JSON數據時,還需要注意一些異常情況的處理。例如,當JSON字符串中不存在某個鍵時,調用get()方法會拋出JSONException異常。又如,當JSON字符串中某個鍵對應的值為null時,調用get()方法會返回null,而非拋出異常。
因此,我們在使用JSONObject和JSONArray類處理JSON數據時,需要注意異常情況的處理,以保證程序的健壯性。