2017-03-25
直接上代碼:
package com.tapt.instance; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; public class Jsontest { public static void main(String[] args) { String json="{\"name\":\"劉德華\",\"age\":35,\"some\":[{\"k1\":\"v1\",\"k2\":\"v2\"},{\"k3\":\"v3\",\"k4\":\"v4\"}]}"; JSONObject jso=JSON.parseObject(json);//json字符串轉換成jsonobject對象 System.out.println("初始jsonObject:\n"+jso+"\n"); JSONArray jsarr=jso.getJSONArray("some");//jsonobject對象取得some對應的jsonarray數組 System.out.println("jsonObject里面的jsonarray:\n"+jsarr+"\n"); JSONObject ao=jsarr.getJSONObject(0);//jsonarray對象通過getjsonobjext(index)方法取得數組里面的jsonobject對象 System.out.println("jsonObject里面的jsonarray里面的第一個jsonobject:\n"+ao+"\n"); String vString=ao.getString("k1");//jsonobject對象通過key直接取得String的值 System.out.println("jsonObject里面的jsonarray里面的第一個jsonobject里的鍵值對對k1取值:\n"+vString+"\n"); } }
控制台輸出:
初始jsonObject:
{"age":35,"name":"劉德華","some":[{"k1":"v1","k2":"v2"},{"k3":"v3","k4":"v4"}]}
jsonObject里面的jsonarray:
[{"k1":"v1","k2":"v2"},{"k3":"v3","k4":"v4"}]
jsonObject里面的jsonarray里面的第一個jsonobject:
{"k1":"v1","k2":"v2"}
jsonObject里面的jsonarray里面的第一個jsonobject里的鍵值對對k1取值:
v1
ps:要遍歷jsonarray對象,可以通過size()方法取得jsonarray的長度,jsonarray.getJSONObject(index)取得里面JSONObject對象;如:
for(int index=0;index<jsonarray.size(),index++){}
