当先锋百科网

首页 1 2 3 4 5 6 7

在Java语言中,JSON(JavaScript Object Notation)是一种轻量级的数据格式,可用于数据交换和存储。嵌套数组则是一种在JSON数据中,通过将数组对象作为另一个数组对象的值进行嵌套的数据结构。

示例:[
{
"name": "Apple",
"price": 3.99,
"inventory": [
{
"storeAddress": "123 Main St",
"quantity": 50
},
{
"storeAddress": "456 Elm St",
"quantity": 25
}
]
},
{
"name": "Banana",
"price": 1.99,
"inventory": [
{
"storeAddress": "789 Oak St",
"quantity": 75
},
{
"storeAddress": "321 Maple St",
"quantity": 100
}
]
}
]

在上面的代码示例中,每个水果对象都有一个名字、价格和一个与之关联的库存数组。每个库存对象包含存储地址和数量。

通过使用Java中的JSON库,可以轻松地读取和解析这种格式的数据。下面是Java中使用org.json库解析嵌套数组的示例代码:

import org.json.JSONArray;
import org.json.JSONObject;
String fruitData = "{...}"; // 假设这里是JSON数据
// 将JSON字符串转换为对象
JSONObject obj = new JSONObject(fruitData);
// 获取水果数组
JSONArray fruitArray = obj.getJSONArray("fruits");
// 迭代水果数组并获取库存信息
for (int i = 0; i < fruitArray.length(); i++) {
JSONObject fruit = fruitArray.getJSONObject(i);
String name = fruit.getString("name");
double price = fruit.getDouble("price");
// 获取库存信息
JSONArray inventoryArray = fruit.getJSONArray("inventory");
for (int j = 0; j < inventoryArray.length(); j++) {
JSONObject inventory = inventoryArray.getJSONObject(j);
String storeAddress = inventory.getString("storeAddress");
int quantity = inventory.getInt("quantity");
// 处理库存信息
}
}

上述代码通过获取JSON对象中的水果数组,然后迭代水果数组,获取每个水果对象及其库存信息。可以继续嵌套更多的JSONArray和JSONObject来构建复杂的数据结构。