数组对象转list实体类
时间: 2023-12-12 08:34:49 浏览: 94
以下是将数组对象转换为List实体类的示例代码:
```java
// 定义实体类User
public class User {
private String id;
private String name;
// 构造函数、getter和setter方法省略
}
// 将数组对象转换为List实体类
public static <T> List<T> castEntity(Object[] arr, Class<T> clazz) {
List<T> list = new ArrayList<>();
for (Object o : arr) {
JSONObject jsonObject = (JSONObject) JSONObject.toJSON(o);
T t = JSONObject.toJavaObject(jsonObject, clazz);
list.add(t);
}
return list;
}
// 示例代码
String jsonStr = "[{\"id\":\"1\",\"name\":\"java\"},{\"id\":\"2\",\"name\":\"C++\"}]";
JSONArray jsonArray = JSONArray.parseArray(jsonStr);
Object[] arr = jsonArray.toArray();
List<User> userList = castEntity(arr, User.class);
```
在示例代码中,我们首先定义了一个实体类User,然后定义了一个castEntity方法,该方法可以将数组对象转换为List实体类。在示例代码中,我们将json字符串转换为JSONArray对象,然后将JSONArray对象转换为Object数组,最后调用castEntity方法将Object数组转换为List<User>类型的userList。需要注意的是,数组元素的顺序必须和实体类中的成员变量顺序保持一致,否则会出现转换错误。
阅读全文