Java解析Json字符串(数组或列表)
封面图
•
2025-10-12
•
Java
218
0
0
0
在 Java 中解析 JSON 字符串(特别是数组或列表)可以使用多种库,其中最常用的是 **Jackson**、**Gson** 和 **org.json**。下面是使用这些库来解析 JSON 数组或列表的示例。 --- ## ✅ 方法一:使用 Jackson 库 ### 1. 添加 Maven 依赖(如果使用 Maven): ```xml <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.15.3</version> </dependency> ``` ### 2. 示例代码: ```java import com.fasterxml.jackson.databind.ObjectMapper; import java.util.List; public class JsonArrayExample { public static void main(String[] args) throws Exception { String jsonArray = "[\"apple\", \"banana\", \"orange\"]"; ObjectMapper mapper = new ObjectMapper(); List<String> fruits = mapper.readValue(jsonArray, List.class); for (String fruit : fruits) { System.out.println(fruit); } } } ``` --- ## ✅ 方法二:使用 Gson 库 ### 1. 添加 Maven 依赖: ```xml <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.10.1</version> </dependency> ``` ### 2. 示例代码: ```java import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; import java.lang.reflect.Type; import java.util.List; public class GsonJsonArrayExample { public static void main(String[] args) { String jsonArray = "[\"apple\", \"banana\", \"orange\"]"; Gson gson = new Gson(); Type listType = new TypeToken<List<String>>(){}.getType(); List<String> fruits = gson.fromJson(jsonArray, listType); for (String fruit : fruits) { System.out.println(fruit); } } } ``` --- ## ✅ 方法三:使用 org.json 库(轻量级) ### 1. 添加 Maven 依赖: ```xml <dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <version>20231013</version> </dependency> ``` ### 2. 示例代码: ```java import org.json.JSONArray; import java.util.List; import java.util.ArrayList; public class JsonArrayExample { public static void main(String[] args) { String jsonArray = "[\"apple\", \"banana\", \"orange\"]"; JSONArray array = new JSONArray(jsonArray); List<String> fruits = new ArrayList<>(); for (int i = 0; i < array.length(); i++) { fruits.add(array.getString(i)); } for (String fruit : fruits) { System.out.println(fruit); } } } ``` --- ## ✅ 总结对比 | 库 | 是否需要 POJO | 复杂度 | 适用场景 | |------------|----------------|--------|------------------------| | Jackson | 否 | 中等 | 复杂对象映射 | | Gson | 否 | 简单 | 快速解析简单结构 | | org.json | 否 | 简单 | 轻量级、快速解析 | --- 如果你有具体的 JSON 结构(比如包含对象的数组),也可以告诉我,我可以提供更详细的解析方式。
上一篇:
JAVA解析JSON数据
下一篇:
白萝卜的药用
标题录入,一次不能超过6条
返回顶部
留言
留言
评论