jsonarray转list<Map>
时间: 2023-08-08 14:04:36 浏览: 107
可以使用以下代码将一个 JSON 数组转换为一个 List<Map>:
```java
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
public class Main {
public static void main(String[] args) {
String jsonArray = "[{\"name\":\"John\",\"age\":30},{\"name\":\"Jane\",\"age\":25}]";
Gson gson = new Gson();
Type mapType = new TypeToken<List<Map<String, Object>>>() {}.getType();
List<Map<String, Object>> list = gson.fromJson(jsonArray, mapType);
// 打印转换后的 List<Map>
for (Map<String, Object> map : list) {
System.out.println(map);
}
}
}
```
这里使用了 Gson 库来进行 JSON 字符串的解析和转换。首先,我们创建了一个 Gson 对象。然后,我们使用 `TypeToken` 类来获取一个 `List<Map<String, Object>>` 的类型。接下来,我们使用 `fromJson()` 方法将 JSON 数组转换为 List<Map> 对象。最后,我们遍历 List<Map> 并打印每个 Map。
请确保在运行代码之前,将 Gson 库添加到项目的依赖中。你可以在 Maven 或 Gradle 中添加以下依赖:
Maven:
```xml
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.7</version>
</dependency>
```
Gradle:
```
implementation 'com.google.code.gson:gson:2.8.7'
```
希望对你有所帮助!如果你有任何其他问题,请随时问我。
阅读全文