獲取巢狀Json裡的value值
阿新 • • 發佈:2018-12-16
Json在java裡表現的是String型別 String str="{“姓名”:“張三”,“成績單”:{“語文”:80,“數學”:90,“英語”:100,}}"; 這個json是json嵌套了一個成績單json 獲取成績單json裡的value思路是這樣的
- 獲取到成績單String
- 將成績單String轉換為JSONObject物件
- 使用JSONObject物件獲取value
想使用這個JSONObject物件需要匯入一下依賴
<dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.4</version> <classifier>jdk15</classifier> </dependency>
//將json字串轉為 JSONObject物件 JSONObject jsonObject = JSONObject.fromObject(str); //獲取到成績單string String chengjidan = jsonObject.getString("成績單"); //將成績單的string轉為JSONObject物件 JSONObject jsonObject2 = JSONObject.fromObject(chengjidan ); //獲得迭代器 Iterator it = jsonObject2.keys(); while (it.hasNext()) { String key = (String) it.next(); //這裡你用String接收,然後可以轉成int,沒有問題 String value = jsonObject2.getString(key);
題外建立json
你想自建一個json,比如如下: String str="{“姓名”:“張三”,“成績單”:{“語文”:80,“數學”:90,“英語”:100,}}"; 寫程式碼時必須在雙引號前加轉義符\
String str="{\"姓名\":\"張三\",\"成績表\":{\"語文\":80,\"數學\":90,\"英語\":100,}}";