色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

gson解析json嵌套list

錢瀠龍2年前9瀏覽0評論

Gson是Google官方提供的一款用于操作Json的Java處理工具庫,它可以自動解析json字符串,并將其中的數(shù)據(jù)轉化為對應的Java對象。其中,解析json嵌套list是一個常見的需求,下面是一個例子:

{
"name": "apple",
"color": "red",
"sizes": [
{
"size": "small",
"price": 1.0
},
{
"size": "medium",
"price": 1.5
},
{
"size": "large",
"price": 2.0
}
]
}

以上是一個描述蘋果的json字符串,其中sizes是一個嵌套了三個元素的list。如果要解析這個字符串,我們可以在Java中定義一個對應的類:

public class Fruit {
private String name;
private String color;
private List<Size> sizes;
// getter & setter
}
public class Size {
private String size;
private double price;
// getter & setter
}

通過在Fruit類中定義List<Size> sizes屬性,我們可以將Json中的sizes數(shù)組轉為對應的Java List對象。

解析Json字符串到Java對象可以使用Gson的fromJson方法,實現(xiàn)方式如下:

Gson gson = new Gson();
Fruit fruit = gson.fromJson(jsonStr, Fruit.class);

上面的代碼會讀取jsonStr字符串,將其中的數(shù)據(jù)自動轉化為Fruit對象并返回。

要注意的是,經(jīng)過解析后fruit對象中的sizes屬性已經(jīng)轉化為了List<Size>類型,可以直接通過getSizes方法獲取到這個List。

List<Size> sizes = fruit.getSizes();
for(Size size: sizes) {
System.out.println(size.getSize() + " - " + size.getPrice());
}

上述代碼中,我們使用了foreach循環(huán)來遍歷Fruit對象中的sizes List。通過調用Size對象的getSize和getPrice方法,我們可以獲取到每個元素的屬性值。

這樣,我們就成功地解析了一個嵌套了List的Json字符串,并將其中的數(shù)據(jù)轉化為了對應的Java對象。