jsonobject转java集合
时间: 2024-07-30 11:00:57 浏览: 62
java 和 json 对象间转换
在Java中,将JSONObject转换成Java集合通常涉及到两个步骤:首先解析JSONObject的内容到对应的Java对象,然后将这些对象放入集合中。这里以JSONArray作为例子,因为它可以表示JSON数组,每个元素都可以转换为一个Java对象。
假设你有一个JSONObject,它包含了一个JSONArray,每个元素都是某个Java类(如User类)的对象:
```java
import org.json.JSONObject;
import org.json.JSONArray;
// 定义User类
public class User {
private String name;
// getters and setters...
public static User fromJson(JSONObject jsonObject) {
try {
return new User(jsonObject.getString("name"));
} catch (Exception e) {
throw new RuntimeException("Failed to parse JSON", e);
}
}
}
// 将JSONArray转换为List<User>
JSONArray jsonArray = jsonObject.getJSONArray("users");
List<User> userList = new ArrayList<>();
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject userObj = jsonArray.getJSONObject(i);
userList.add(User.fromJson(userObj));
}
```
在这个例子中,`fromJson`是一个静态工厂方法,用于从JSONObject创建User对象。然后通过遍历JSONArray并调用这个方法,我们可以得到一个User对象列表。
阅读全文