要遍历一个JSON数组,可以使用Jackson库中的JsonNode类。以下是一个示例代码,演示如何遍历一个JSON数组并提取其中的数据:
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.IOException;
public class JsonArrayTraversal {
public static void main(String[] args) {
String json = "[{\"name\": \"Alice\", \"age\": 30}, {\"name\": \"Bob\", \"age\": 25}]";
try {
ObjectMapper objectMapper = new ObjectMapper();
JsonNode jsonNode = objectMapper.readTree(json);
// 检查JSON是否为数组
if (jsonNode.isArray()) {
// 遍历数组中的每个元素
for (JsonNode arrayElement : jsonNode) {
// 提取元素中的数据
String name = arrayElement.get("name").asText();
int age = arrayElement.get("age").asInt();
// 打印数据
System.out.println("Name: " + name);
System.out.println("Age: " + age);
System.out.println();
}
} else {
System.out.println("JSON is not an array");
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
在上面的示例中,我们首先将JSON字符串转换为JsonNode对象,然后检查这个JsonNode是否为一个数组。如果是数组,则遍历数组中的每个元素,并提取每个元素中的数据。最后,我们打印出提取的数据。