将List中泛型对象转成List<Map>
时间: 2024-05-12 14:19:23 浏览: 147
可以通过循环遍历List中的每个泛型对象,将其转成Map对象,然后将Map对象添加到新的List中。具体实现如下:
```
public static <T> List<Map<String, Object>> convertList(List<T> list) {
List<Map<String, Object>> resultList = new ArrayList<>();
for (T obj : list) {
Map<String, Object> map = new HashMap<>();
Field[] fields = obj.getClass().getDeclaredFields();
for (Field field : fields) {
field.setAccessible(true);
try {
map.put(field.getName(), field.get(obj));
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
resultList.add(map);
}
return resultList;
}
```
这个方法的参数是一个List类型的泛型对象,返回值是一个List<Map<String, Object>>类型的对象。在方法中,首先创建一个新的List对象,然后通过循环遍历原始List中的每个泛型对象。在循环体中,首先创建一个空的Map对象,然后获取泛型对象的所有属性,并将属性名称和属性值存储到Map对象中。最后将Map对象添加到新的List中,并返回新的List。
阅读全文