1. 程式人生 > >獲取巢狀Json裡的value值

獲取巢狀Json裡的value值

Json在java裡表現的是String型別 String str="{“姓名”:“張三”,“成績單”:{“語文”:80,“數學”:90,“英語”:100,}}"; 這個json是json嵌套了一個成績單json 獲取成績單json裡的value思路是這樣的

  1. 獲取到成績單String
  2. 將成績單String轉換為JSONObject物件
  3. 使用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,}}";