Java 遍历 JSON 的方法:使用库:Jackson:ObjectMapper 提供树型模型和流式处理。Gson:轻量级库,专注于快速转换。JSON-java:开源库,实现了 JSON 解析器和生成器。遍历 JSON 数据:Jackson:JsonNode.get() 获取数组或对象,使用循环遍历。Gson:JsonArray/JsonObject.getAsJsonArray()/getAsJsonObject() 获取数组或对象,使用循环遍历。JSON-java:JSONArray/JS

如何使用 Java 遍历 JSON
JSON(JavaScript 对象表示法)是一种流行的数据格式,用于在应用程序之间传输数据。Java 提供了多种库和 API,用于解析和遍历 JSON 数据。
库和 API
- Jackson:这是一个功能强大的 JSON 库,提供了一系列特性,包括数据绑定、树形模型和流式处理。
- Gson:这是一个轻量级库,专注于快速将 JSON 数据转换为 Java 对象和反之。
- JSON-java:这是一个开源库,实现了 JSON 解析器和生成器。
遍历 JSON 数据
立即学习“Java免费学习笔记(深入)”;
1. 使用 jackson-databind
ObjectMapper mapper = new ObjectMapper();
JsonNode rootNode = mapper.readTree(jsonStr);
// 遍历数组
for (JsonNode node : rootNode.get("array")) {
System.out.println(node.asText());
}
// 遍历对象
for (Map.Entry entry : rootNode.get("object").fields()) {
System.out.println(entry.getKey() + ": " + entry.getValue().asText());
} 2. 使用 Gson
Gson gson = new Gson();
JsonObject rootObj = gson.fromJson(jsonStr, JsonObject.class);
// 遍历数组
JsonArray arr = rootObj.getAsJsonArray("array");
for (JsonElement element : arr) {
System.out.println(element.getAsString());
}
// 遍历对象
JsonObject obj = rootObj.getAsJsonObject("object");
for (Map.Entry entry : obj.entrySet()) {
System.out.println(entry.getKey() + ": " + entry.getValue().getAsString());
} 3. 使用 JSON-java
JSONObject rootObj = JSONValue.parse(jsonStr);
// 遍历数组
JSONArray arr = rootObj.getJSONArray("array");
for (int i = 0; i < arr.length(); i++) {
System.out.println(arr.get(i).toString());
}
// 遍历对象
org.json.JSONObject obj = rootObj.getJSONObject("object");
for (String key : obj.keySet()) {
System.out.println(key + ": " + obj.getString(key));
}











