java Collectors.toMap 怎么用
时间: 2023-11-08 22:59:59 浏览: 113
java集合-TreeMap的使用
可以使用Collectors.toMap()方法来实现根据某一属性去重。具体用法如下:
```
List<UserInfo> list = userInfoMapper.getList();
Map<String, UserInfo> collect = list.stream()
.collect(Collectors.toMap(UserInfo::getName, Function.identity(), (v1, v2) -> v1));
list = new ArrayList<>(collect.values());
```
上述代码中,首先通过stream()方法将List转换为流,然后使用Collectors.toMap()方法来将流中的元素按照指定属性(这里是姓名)作为键,以元素本身作为值进行收集。当遇到重复的键时,使用第三个参数指定的函数来解决冲突(这里是保留第一个出现的元素)。最后将去重后的结果转换为ArrayList。
阅读全文