繁体   English   中英

从 JsonNode 数组中获取元素

[英]Get element from JsonNode array

我有这个 json:

{
    "text":[
        {"a":1},
        {"b":2}
    ]
}

我有这个代码:

JsonNode jsonNode = (new ObjectMapper()).readTree(jsonString);

//get first element from "text"
//this is just an explanation of what i want

String aValue = jsonNode.get("text")[0]
                        .get("a")
                        .asText();

如果不将其映射到 object,我该如何做到这一点?

或者做类似JsonNode[] arrayarray[0]代表aarray[1]代表b

如果您想显式遍历 json 并找到a的值,您可以对您指定的 json 执行此操作。

String aValue = jsonNode.get("text").get(0).get("a").asText();

找到b的值将是

String bValue = jsonNode.get("text").get(1).get("b").asText();

您还可以遍历文本数组中的元素并获取ab的值作为

for (JsonNode node : jsonNode.get("text")) {
    System.out.println(node.fields().next().getValue().asText());
}

这将在控制台上打印以下内容

1
2

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM