JSONObject转对象、集合、数组
时间: 2024-01-26 08:03:48 浏览: 87
要将JSONObject转换为对象、集合或数组,可以使用以下方法:
1. 将JSONObject转换为对象:
可以使用Gson库将JSONObject转换为对象。假设我们有一个JSONObject对象:
```
JSONObject jsonObject = new JSONObject();
jsonObject.put("name", "John");
jsonObject.put("age", 30);
```
如果要将它转换为一个Person对象,可以使用以下代码:
```
Gson gson = new Gson();
Person person = gson.fromJson(jsonObject.toString(), Person.class);
```
其中,Person类应该具有与JSONObject中键值对对应的属性。
2. 将JSONObject转换为集合:
同样,可以使用Gson库将JSONObject转换为集合。假设我们有一个JSONArray对象:
```
JSONArray jsonArray = new JSONArray();
jsonArray.put("John");
jsonArray.put("Mary");
jsonArray.put("Tom");
```
如果要将它转换为List<String>对象,可以使用以下代码:
```
Gson gson = new Gson();
Type type = new TypeToken<List<String>>(){}.getType();
List<String> list = gson.fromJson(jsonArray.toString(), type);
```
其中,List<String>表示集合的类型,type表示集合的具体类型。
3. 将JSONObject转换为数组:
同样可以使用Gson库将JSONObject转换为数组。假设我们有一个JSONArray对象:
```
JSONArray jsonArray = new JSONArray();
jsonArray.put(1);
jsonArray.put(2);
jsonArray.put(3);
```
如果要将它转换为int[]数组,可以使用以下代码:
```
Gson gson = new Gson();
int[] array = gson.fromJson(jsonArray.toString(), int[].class);
```
其中,int[].class表示数组的类型。
阅读全文