jsonarray转成list<map>
时间: 2023-10-28 18:57:33 浏览: 206
Json转list
可以使用以下代码将一个 JSONArray 转换为 List<Map<String, Object>>:
```java
import org.json.JSONArray;
import org.json.JSONObject;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class JsonArrayToListMapExample {
public static List<Map<String, Object>> jsonArrayToListMap(JSONArray jsonArray) {
List<Map<String, Object>> list = new ArrayList<>();
// 遍历 JSONArray 中的每个元素
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
Map<String, Object> map = new HashMap<>();
// 遍历 JSONObject 中的每个键值对,将其存储到一个 Map 中
for (String key : jsonObject.keySet()) {
Object value = jsonObject.get(key);
map.put(key, value);
}
list.add(map);
}
return list;
}
public static void main(String[] args) {
// 示例 JSONArray
JSONArray jsonArray = new JSONArray("[{\"name\":\"John\",\"age\":30},{\"name\":\"Alice\",\"age\":25}]");
// 转换为 List<Map<String, Object>>
List<Map<String, Object>> list = jsonArrayToListMap(jsonArray);
// 打印结果
for (Map<String, Object> map : list) {
for (Map.Entry<String, Object> entry : map.entrySet()) {
System.out.println(entry.getKey() + ": " + entry.getValue());
}
System.out.println();
}
}
}
```
这段代码将会输出:
```
name: John
age: 30
name: Alice
age: 25
```
这样就将 JSONArray 转换为了 List<Map<String, Object>>。每个 JSONObject 中的键值对都被存储为一个 Map,所有的 Map 又被存储为一个 List。
阅读全文