java - 如何从 jsonstring 中的列表解析自定义对象?

标签 java json list parsing

我得到了以下 json:

{
    "ID": "1234567",
    "dangereousCargo": true,
    "numberOfPassangers": 164,
    "cargo": [
        {
            "type": "Oil",
            "amount": 8556
        },
        {
            "type": "Chemicals",
            "amount": 5593
        }
    ]
}

this问题中,我了解到可以从jsonObject中获取cargoList(如果该列表包含某种类型的对象)。但是如何从该列表中获取单独的 CargoObjects 呢?

+jsonstring 的变量名称必须与我的 CargoClass 中的变量名称相对应吗?如果 jsonObject 仅包含 type 和 amount 而我的 CargoClass 有更多属性怎么办?

最佳答案

您可以迭代抛出表示您的 cargo 列表正在执行的JSONArray(未测试)

JSONObject json = new JSONObject(jsonString);
JSONArray cargoList = json.getJSONArray("cargo");

for(int i=0; i< cargoList.length(); i++) {
    JSONObject cargo = cargoList.getJSONObject(i);
    //Do something with cargo
}

关于java - 如何从 jsonstring 中的列表解析自定义对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33611539/

相关文章:

python - 在 python 中打印列表

java - 如何制作二维列表以及如何使用它

java - getInputStream 卡住并且永远不会完成

c# - 如何检查两个 JSON 对象是否相等?

python - 在列表的开头和结尾强制执行项目

python - 如何在python中使用迭代器

java - 在 Java 中更新参数值

java - 使用 Apache Lucene 创建出现 vector

python - Scrapy - 如何同时在S3和本地文件系统中保存json文件

javascript - 从 onclick 更改为 onchange 不起作用