用途1:表示名稱 / 值對
最簡單的形式,可以用下面這樣的 JSON 表示 "名稱 / 值對" :{ "firstName": "Brett" }。
但是,當將多個"名稱 / 值對"串在一起時,JSON 就會體現出它的價值了。首先,可以創建包含多個"名稱 / 值對"的 記錄,比如:
{ "firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" }
用途2:表示數組
如果使用 JSON,就只需將多個帶花括號的記錄分組在一起:
{ "people": [
{ "firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" },
{ "firstName": "Jason", "lastName":"Hunter", "email": "bbbb"},
{ "firstName": "Elliotte", "lastName":"Harold", "email": "cccc" }
]}
利用gson來解決 :
如果使用JsonObject和JsonArray的配合起來使用也是可以解析的但是解析起來就比較麻煩了,如果使用Gson解析就比較簡單了,
首先我們需要定義一個序列化的Bean,這裏採用內部類的形式,這樣比較容易看得清晰些。
以下爲例:
String json = {"a":"100","b":[{"b1":"b_value1","b2":"b_value2"}, {"b1":"b_value1","b2":"b_value2"}],"c": {"c1":"c_value1","c2":"c_value2"}}
首先我們需要定義一個序列化的Bean,這裏採用內部類的形式。然後,想拿數據就很簡單啦,直接在jsonBean裏面取就可以了!
很多時候大家都是不知道這個Bean是該怎麼定義,這裏面需要注意幾點:
1、內部嵌套的類必須是static的,要不然解析會出錯;
2、類裏面的屬性名必須跟Json字段裏面的Key是一模一樣的;
3、內部嵌套的用[]括起來的部分是一個List,所以定義爲
public List<B> b,而只用{}嵌套的就定義爲
public C c。