欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

java 快速提取多層json

劉柏宏2年前8瀏覽0評論

JSON是一種輕量級的數據交換格式,由于其簡潔性、可讀性和易于生成和解析,成為現代Web應用中常用的數據格式。在Java開發中,有時需要從多層的JSON數據中提取出所需要的信息,以下是使用Java快速提取多層JSON的方法。

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
// JSON數據
String jsonStr = "{\n" +
"  \"name\": \"Tom\",\n" +
"  \"age\": 18,\n" +
"  \"address\": {\n" +
"    \"province\": \"Guangdong\",\n" +
"    \"city\": \"Shenzhen\",\n" +
"    \"district\": \"Nanshan\"\n" +
"  },\n" +
"  \"hobbies\": [\n" +
"    \"reading\",\n" +
"    \"swimming\",\n" +
"    \"climbing\"\n" +
"  ]\n" +
"}";
try {
// 將JSON字符串解析為JSON對象
JSONObject jsonObj = new JSONObject(jsonStr);
// 提取name和age
String name = jsonObj.getString("name");
int age = jsonObj.getInt("age");
System.out.println("name: " + name + ", age: " + age);
// 提取address中的province和district
JSONObject addressObj = jsonObj.getJSONObject("address");
String province = addressObj.getString("province");
String district = addressObj.getString("district");
System.out.println("province: " + province + ", district: " + district);
// 提取hobbies中的第二個愛好
JSONArray hobbiesArr = jsonObj.getJSONArray("hobbies");
String hobby2 = hobbiesArr.getString(1);
System.out.println("second hobby: " + hobby2);
} catch (JSONException e) {
e.printStackTrace();
}

以上代碼使用了JSON庫中的JSONObject和JSONArray類,通過調用各種方法來提取JSON數據中的各個字段。需要注意的是,在使用這些方法時,需要保證JSON數據中確實存在相應的字段,否則將拋出JSONException異常。