如何使用 Java 中的 Jackson API 将 JsonNode 转换为 ArrayNode?
JsonNode 是所有 JSON 节点的基类,构成 JSON 树模型,而ArrayNode 是表示从 JSON 内容映射的数组的节点类。我们可以通过类型转换 ArrayNode 来将 JsonNode 转换为 ArrayNode,使用 **ObjectMapper 类的 readTree() 方法检索值,使用 get() 方法访问数组节点的指定元素的值。
语法
public JsonNode readTree(String content) throws IOException, com.fasterxml.jackson.core.JsonProcessingException
示例
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.node.ArrayNode; import com.fasterxml.jackson.core.JsonProcessingException; public class JSonNodeToArrayNodeTest { public static void main(String args[]) throws JsonProcessingException { String jsonStr = "{\"Technologies\" : [\"Java\", \"Scala\", \"Python\"]}"; ObjectMapper mapper = new ObjectMapper(); ArrayNode arrayNode = (ArrayNode) mapper.readTree(jsonStr).get("Technologies"); if(arrayNode.isArray()) { for(JsonNode jsonNode : arrayNode) { System.out.println(jsonNode); } } } }
输出
"Java" "Scala" "Python"
广告