Java中如何将一个List对象转化为Map?

码云
2020-11-04 10:55

当然,我们可以遍历list然后将list中对象分别取出key和value存放到map中,但是这样做比较繁琐。这里推荐使用Stream神器来完成转换,参考以下示例代码:

//定义User对象
class User {
  String name;
  int age;

  User(String name,int age) {this.name=name;this.age=age;}

  String getName() {return this.name;}
  int getAge() {return this.age;}
}

List<User> users=new ArrayList<>();
users.add(new User("jack",2));
users.add(new User("tom",3));

//一句话将list转化为map
Map<String, User> result = users.stream().collect(Collectors.toMap(User::getName,User::.getAge));

 

全部评论