怎么把List<Map<String,Object>>转换成List<对象>
时间: 2023-10-14 08:12:27 浏览: 116
List<Map<String, Object>>转化为List<JavaBean>工具类
4星 · 用户满意度95%
要将`List<Map<String, Object>>`转换为`List<对象>`,你需要先定义一个对象类,该类应该具有与`Map<String, Object>`中的键值对相对应的字段。然后,你需要使用Java 8的流式API来转换列表。
假设你有一个名为`Person`的类,它有三个字段:`name`、`age`和`gender`,你可以使用以下代码将`List<Map<String, Object>>`转换为`List<Person>`:
```java
List<Map<String, Object>> mapList = ... // 你的Map列表
List<Person> personList = mapList.stream()
.map(map -> new Person((String) map.get("name"), (int) map.get("age"), (String) map.get("gender")))
.collect(Collectors.toList());
```
在这个代码中,我们首先使用流式API将`mapList`转换为流。然后,对于每个`Map<String, Object>`,我们使用它的键值对来创建一个新的`Person`对象,并将其收集到一个新的`List<Person>`中。
请注意,在这个简单的例子中,我们假设`map.get("age")`返回一个`int`类型,而`map.get("name")`和`map.get("gender")`返回一个`String`类型。如果你的`Map<String, Object>`包含其他类型的值,你需要相应地转换它们。
阅读全文