Map转成对象类型List
时间: 2023-08-18 19:07:12 浏览: 98
将Map转换为对象类型的List也可以使用Java 8的Stream API。假设有一个Person对象:
```java
public class Person {
private String name;
private int age;
// 省略getter和setter方法
}
```
现在有一个Map,包含多个Person对象的属性:
```java
Map<String, Object> map1 = new HashMap<>();
map1.put("name", "Alice");
map1.put("age", 25);
Map<String, Object> map2 = new HashMap<>();
map2.put("name", "Bob");
map2.put("age", 30);
List<Map<String, Object>> mapList = new ArrayList<>();
mapList.add(map1);
mapList.add(map2);
```
可以使用Java 8的Stream API将Map转换为Person对象的List:
```java
List<Person> personList = mapList.stream().map(map -> {
Person person = new Person();
person.setName((String) map.get("name"));
person.setAge((int) map.get("age"));
return person;
}).collect(Collectors.toList());
```
这里使用了map方法将每个Map对象转换为一个Person对象,然后使用collect方法将所有Person对象收集到一个List中。注意,在将Map对象转换为Person对象时需要进行类型转换。
阅读全文