java8list集合javabean怎么转map
时间: 2023-09-02 13:12:24 浏览: 103
可以使用 Java 8 中的流 (Stream) 来将 List 集合中的 JavaBean 转换为 Map,代码如下:
```java
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
public class JavaBeanToMap {
public static void main(String[] args) {
// 假设有一个 JavaBean 类 User,有两个属性 name 和 age
List<User> userList = List.of(new User("Alice", 25), new User("Bob", 30));
// 将 JavaBean List 转换为 Map
Map<String, Integer> userMap = userList.stream()
.collect(Collectors.toMap(User::getName, User::getAge));
// 输出结果
System.out.println(userMap);
// 输出:{Alice=25, Bob=30}
}
// 假设 User 类的定义如下
static class User {
private String name;
private int age;
// 构造函数和 getter/setter 方法省略
}
}
```
以上代码中,使用了 `Collectors.toMap` 方法来将 List 中的 JavaBean 转换为 Map,其中 `User::getName` 和 `User::getAge` 分别代表了 key 和 value 的提取方式。如果 JavaBean 中的属性较多,可以使用 lambda 表达式或者方法引用来简化代码。
阅读全文