首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从JsonNode数组获取元素

从JsonNode数组获取元素
EN

Stack Overflow用户
提问于 2020-05-29 16:26:29
回答 1查看 16.6K关注 0票数 6

我有个json:

代码语言:javascript
复制
{
    "text":[
        {"a":1},
        {"b":2}
    ]
}

我有这样的代码:

代码语言:javascript
复制
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();

我怎么能做到这一点,而不把它映射到对象呢?

或者做一些类似于JsonNode[] arrayarray[0]代表aarray[1]代表b的事情。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-29 16:36:40

如果您想显式遍历json并找到a的值,您可以为您指定的json这样做。

代码语言:javascript
复制
String aValue = jsonNode.get("text").get(0).get("a").asText();

找到b的值将是

代码语言:javascript
复制
String bValue = jsonNode.get("text").get(1).get("b").asText();

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

代码语言:javascript
复制
for (JsonNode node : jsonNode.get("text")) {
    System.out.println(node.fields().next().getValue().asText());
}

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

代码语言:javascript
复制
1
2
票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62090484

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档