JSONArray转集合
时间: 2023-09-02 17:10:26 浏览: 82
可以使用类似于JavaScript的语法将JSONArray转换为JSONObject。例如:
```
JSONArray jsonArray = new JSONArray();
jsonArray.put("item1");
jsonArray.put("item2");
JSONObject jsonObject = new JSONObject();
jsonObject.put("array_key", jsonArray);
```
这样就可以将JSONArray转换为一个键值对,键为 "array_key",值为jsonArray的JSONObject了。
相关问题
jsonarray转map集合
可以使用以下代码将一个 JSON 数组转换为 Map 集合:
```java
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
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 将 JSON 数组转换为 List<Map<String, Object>>
Type type = new TypeToken<List<Map<String, Object>>>(){}.getType();
List<Map<String, Object>> list = new Gson().fromJson(jsonArray, type);
// 将 List<Map<String, Object>> 转换为 Map<String, Object>
Map<String, Object> map = listToMap(list);
// 输出转换后的 Map
for (Map.Entry<String, Object> entry : map.entrySet()) {
System.out.println(entry.getKey() + ": " + entry.getValue());
}
}
private static Map<String, Object> listToMap(List<Map<String, Object>> list) {
Map<String, Object> map = new HashMap<>();
for (Map<String, Object> item : list) {
for (Map.Entry<String, Object> entry : item.entrySet()) {
map.put(entry.getKey(), entry.getValue());
}
}
return map;
}
}
```
上述代码使用了 Google 的 Gson 库来解析 JSON 字符串,并通过反射机制将 List<Map<String, Object>> 转换为 Map<String, Object>。请确保在项目中添加了 Gson 库的依赖。
JSONArray转List集合对象
可以使用以下代码将JSONArray转换为List集合对象:
```
JSONArray jsonArray = new JSONArray(jsonArrayString);
List<Object> list = new ArrayList<Object>();
for (int i = 0; i < jsonArray.length(); i++) {
list.add(jsonArray.get(i));
}
```
这里的jsonArrayString是一个包含JSON数据的字符串,可以从网络或本地文件中获取。在循环中,我们使用JSONArray的get()方法获取数组中的每个元素,并将它们添加到List中。最终,我们得到了一个List集合对象,其中包含了JSONArray中的所有元素。
阅读全文