[英]Extract element from json object array
我有以下 json 响应。 下面对 layer2 object 数组的响应可以有 x 个项目
{"data": {
"layer1": {
"layer2": [
{
"item1": "result1",
"item2": "result2"
},
{
"item1": "result3",
"item2": "result4"
}
]
}
}
}
我的要求是如果我知道一个元素的值(例如item1
值result4 ),我如何获得item1
的对应项目值result3 。
我有下面的代码,我可以在其中检索 object 数组。 是否可以通过以下 output 检索以上内容。
List<Object> actual = response.jsonPath().getList("data.layer1.layer2");
我想你的意思是如果 item2 是 result4 然后找到 item1。 使用您编写的代码,您可以迭代列表并将 object 类型转换为 map 并检查 item2 是否存在且值为 result4 然后获取 item1。
for(Object item: actual)
{
if(((Map)item).get("item2").equals("result4")){
return ((Map)item).get("item1");
}
}
PS:我没有测试过这段代码,但从逻辑上讲它应该可以工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.