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

gson多層嵌套解析json數(shù)據(jù)

夏志豪2年前8瀏覽0評論

gson是一個很好用的解析json數(shù)據(jù)的庫,但有時候我們會遇到多層嵌套的json數(shù)據(jù),這時候該怎么處理呢?下面我們來介紹一下使用gson解析多層嵌套json數(shù)據(jù)的方法。

首先,我們先看一下json數(shù)據(jù)的結(jié)構(gòu):

{
"name": "Lucy",
"age": 18,
"address": {
"province": "Beijing",
"city": "Haidian",
"detail": {
"street": "Longze Road",
"number": "111"
}
}
}

由以上數(shù)據(jù)可知,我們需要解析出三個信息:name、age和address,其中address又嵌套了兩個信息:province和city和detail,detail又有兩個信息:street和number。

那么,我們該怎么解析呢?

Gson gson = new Gson();
JsonElement element = new JsonParser().parse(jsonStr);
JsonObject obj = element.getAsJsonObject();
String name = obj.get("name").getAsString();
int age = obj.get("age").getAsInt();
JsonObject address = obj.getAsJsonObject("address");
String province = address.get("province").getAsString();
String city = address.get("city").getAsString();
JsonObject detail = address.getAsJsonObject("detail");
String street = detail.get("street").getAsString();
String number = detail.get("number").getAsString();

首先,我們利用Gson庫創(chuàng)建一個Gson對象和JsonParser對象,并用parse方法將json字符串解析成JsonElement對象,再將JsonElement對象轉(zhuǎn)化成JsonObject對象。

然后,我們就可以通過get方法獲取每一個信息的值了,例如:name和age。

處于多層嵌套的address信息需要分步獲取,首先獲取到address的JsonObject對象,再從中獲取province和city信息。

最后,通過獲取到的JsonObj對象,我們可以獲取嵌套在其中的detail信息的JsonObject對象,并通過get方法獲取street和number。

以上便是使用gson解析多層嵌套json數(shù)據(jù)的方法。