Java8 Lambda中 Collectors.toMap

Collectors.toMap 作用是将List 转成map

Collectors.toMap(key,v->v,(v1,v2)->v1)

//其中key 就是map得key值
//第二个参数就是map得value

//第三个参数的作用是当出现一样的key值得时候如何取舍其中V1代表旧值,v2代表新值,示例中取旧值

说说几种应用场景

1、当list中都为user对象,这个时候我需要根据年龄对所有用户进行合并分组,这个时候就可以如下写法

list.stream.collect(Collectors.toMap(User::getAge,user->user.getName(),(name1,name2)->name1+","+name2));


//这个时候就会生成一个这样得map(30,"小明,小花,小丽"),(29,"小东,小西,小北")

 

 

 

你可能感兴趣的:(java基础)