gpt4 book ai didi

java - 如何使用 gson 迭代 json 数据

转载 作者:行者123 更新时间:2023-12-01 20:17:57 26 4
gpt4 key购买 nike

我的 json 字符串是:

{
"recordsTotal":1331,
"data":[
{
"part_number":"3DFN64G08VS8695 MS",
"part_type":"NAND Flash",
"id":1154,
"manufacturers":[
"3D-Plus"
]
},
{
"part_number":"3DPM0168-2",
"part_type":"System in a Package (SiP)",
"id":452,
"manufacturers":[
"3D-Plus"
]
},
{
"part_number":"3DSD1G16VS2620 SS",
"part_type":"SDRAM",
"id":269,
"manufacturers":[
"3D-Plus"
]
}
]
}

这段代码让我可以访问两个最高级别的元素:

JsonObject jsonObject = new JsonParser().parse(jsonString).getAsJsonObject(); 
System.out.println("data : " + jsonObject.get("data"));
System.out.println("recordsTotal : " + jsonObject.get("recordsTotal"));

但是我想要做的是迭代“data”内的所有对象并创建一个part_numbers列表。我该怎么做?

最佳答案

JsonArray is an Iterable<JsonElement> 。所以你可以使用for in循环。

JsonObject jsonObject = new JsonParser().parse(jsonString).getAsJsonObject();
final JsonArray data = jsonObject.getAsJsonArray("data");
System.out.println("data : " + data);
System.out.println("recordsTotal : " + jsonObject.get("recordsTotal"));
List<String> list = new ArrayList<String>();
for (JsonElement element : data) {
list.add(((JsonObject) element).get("part_number").getAsString());

}

关于java - 如何使用 gson 迭代 json 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45448933/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com