java8 toMap(Key重复java8自己的思路如何解决)

在java8中Collectors类中的tomap方法提供了我们将数据转换成Map的封装,往往在我们应用2个参数的(我们声明Key和Value很直接如下图)前提是key不能重复


若有重复的key会直接报下面 key重复的异常;

java.lang.IllegalStateException: Duplicate key san

java8 toMap(Key重复java8自己的思路如何解决)_第1张图片

其实java8已经给我们提供了解决的方式: 方法的第三个参数体现的


java8处理思路:即 两个key相同时 只能有一个key存在,那对应的value如何处理?  value就是这样处理(我们自己来写方法体,我只是简单的拿逗号拼接下)

希望帮到大家

后补一个小细节:项目上遇到的!(怕是要会了之后才能看懂的下面补充的!- -)

.
我以前一般(o,n)->n   但是这样有一个小问题 :
问题:这个表上对于修改前取数据的时候是xxxxRepository.findTopByXXXX 这里的top或者first都会去取那个old的值从而 会改那个old的值.
   !!但是取数据的时候还是会拿新的
解决方式1:,所以 控制好(o,n)->o

解决方式2:否则修改时候的查找xxxxRepository.findTopByXXXXOrderByIdDesc  就ok了
.
.





你可能感兴趣的:(java)