我正在尝试遍历JsonNode树,并且我写了一个迭代遍历根节点的子节点的下面的代码片段,并从中获取文本,我假设它将是一个字段名称。假设杰克逊根节点的所有孩子都是田野名称是否合理?
JsonNode rootNode = new ObjectMapper().readTree(jsonParser);
for (JsonNode node : rootNode){
String fieldName = node.asText(); // <- is it safe to assume this?
JsonNode value = node.get(fieldName);
}
我已阅读this similar post,但接受的答案完全行不通,因为这两个fields
和fieldNames
回报iterator
,不能仅仅通过自身as far as I know通过foreach
循环迭代。
其他最有回报的答案有效,但我想知道上述片段的假设是否仍然有效。
接受的答案状态_因为'JsonNode#iterator()'不包含keys_和一个链接到javadoc的更多细节。 –
如果您对foreach语句感到困惑,请参阅这里http://stackoverflow.com/questions/85190/how-does-the-java-for-each-loop-work)它如何与'迭代器()'。 –