Java8 中 List 转 Map(Collectors.toMap) 使用技巧


使用toMap()函数之后,返回的就是一个Map了,自然会需要key和value。
toMap()的第一个参数就是用来生成key值的,第二个参数就是用来生成value值的。
第三个参数用在key值冲突的情况下:如果新元素产生的key在Map中已经出现过了,第三个参数就会定义解决的办法。

在你的例子中
 .collect(Collectors.toMap(UserBo::getUserId, x -> x, (x, y) -> x));
第一个参数UserBo::getUserId 表示选择UserBo的getUserId作为map的key值;
第二个参数x -> x表示选择将原来的对象作为map的value值;
第三个参数(x, y) -> x中,如果x与y的key值相同,选择x作为那个key所对应的value值

 

https://zhangzw.com/posts/20191205.html


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM