【发布时间】:2018-07-13 22:50:44
【问题描述】:
我有一些 json 数据
{
"attributesMappings": [
{
"domainType": "WI",
"attribute": [
{
"staticAttributes": [
{
"attributeName": "test",
"attributeValue": "test",
"required": true
}
]
}
]
},
{
"domainType": "PI",
"attribute": null
}
]
}
我可以使用
读取对象JSONArray vendorData = mainObj.getJSONArray("attributesMappings");
假设我只想获取域类型为“WI”的对象,我知道可以使用
JSONObject obj = vendorData.getJSONObject(0);
然后我可以执行操作,假设我不知道“WI”将存储在哪个索引处,有没有办法获取数据。我知道我们可以遍历数组项并匹配 domainType。
我们是否可以通过在 getJSONObject 中使用“WI”或类似的东西来获得完整的对象。
JSONObject domainType = attributeMappings.getJSONObject("WI");
【问题讨论】:
-
我知道我们可以遍历数组项并匹配 domainType。 那么问题出在哪里?
-
寻找更有效的方法。假设数据嵌套很深,那么问题就大了。
-
对此您无能为力。您可以构建一个映射来避免多次查找的迭代,但如果它只是您所追求的一个值,那将是不值得的。
-
@Devon_C_Miller JavaScript 问题对 Java 有何帮助?