Java 获取内部JSON数组值
我正在尝试获取serviceResponseValue映射中“filterInputParameters”数组的值。现在,我尝试遍历映射,但只能获得第一级数据,例如displayName,我需要对FilterInputParameters数组中的值进行更深一层和两层的操作。如果你需要更多信息,请告诉我 Dart代码:Java 获取内部JSON数组值,java,arrays,json,map,dart,Java,Arrays,Json,Map,Dart,我正在尝试获取serviceResponseValue映射中“filterInputParameters”数组的值。现在,我尝试遍历映射,但只能获得第一级数据,例如displayName,我需要对FilterInputParameters数组中的值进行更深一层和两层的操作。如果你需要更多信息,请告诉我 Dart代码: var jsonString = response; var dropDown = querySelector("#asset"); Map jsonObject
var jsonString = response;
var dropDown = querySelector("#asset");
Map jsonObject = JSON.decode(jsonString) as Map;
dropDownList = jsonObject["serviceResponseValue"] as List<Map>;
LinkedHashMap<String, Map> dataMap = new LinkedHashMap<String, Map>();
//the one causing issues and returning null
var ddValues2 = dropDownList
//extract the 'displayValue'
.map((e2) => e2['filterInputParameters']['value']);
//create a set to eliminate duplicates
//.toSet().toList()
//sort the result
//..sort();
ddValues2.forEach((e2) {
print(e2);
});
var jsonString=response;
var下拉列表=查询选择器(“资产”);
Map jsonObject=JSON.decode(jsonString)为Map;
dropDownList=jsonObject[“serviceResponseValue”]作为列表;
LinkedHashMap dataMap=新LinkedHashMap();
//导致问题并返回null的
var ddValues2=下拉列表
//提取“displayValue”
.map((e2)=>e2['filterInputParameters']['value']);
//创建一个集合以消除重复项
//.toSet().toList()
//排序结果
//…排序();
ddValues2.forEach((e2){
印刷品(e2);
});
Map jsonObject=JSON.decode(jsonString)为Map;
打印(jsonObject[“serviceResponseValue”][0][“filterInputParameters”]);
在JSON中,指示列表和映射
您可以通过传递数字索引来访问列表元素(xxx[5]
以获取第6项)以及访问映射项的字符串(
xxx[“serviceResponeValue”]
)
您的JSON以
{//外部元素是一个映射
“serviceResponseValue”:[//可以使用
//字符串索引“serviceResponseValue”
//在冒号“:”开始关联的值之后,是一个列表
//可以使用[0]访问第一项
{//其中包含一个映射
“filterInputParameters”:[//映射的此项由[“filterInputParameters”返回
{
“id”:“8A4984E047D0E40D0147D0E4100008”,
转到json.org学习json语法——学习只需5-10分钟,事情就会变得更有意义。问题,我如何获得第二个值映射,其中显示48小时等等?我尝试了jsonObject[“serviceResponseValue”][2][“filterInputParameters”];运气不佳。jsonObject[“serviceResponseValue”][1]