Java stream流 常用记录

根据列表中的某个字段进行去重

java 复制代码
// 根据roleKey对列表去重
            return roleList.stream()
                    .map(AccountRole::getRoleKey)
                    .distinct()
                    .map(roleKey -> roleList.stream()
                            .filter(role -> role.getRoleKey().equals(roleKey))
                            .findFirst()
                            .orElse(null))
                    .filter(Objects::nonNull)
                    .collect(Collectors.toList());
相关推荐
“AI国潮设计-小江”14 小时前
【AIGC实战】Python+SDXL打造“潮汕英歌舞IP”万能立牌插件,批量生成“发财元宝蛋糕”视觉营销方案(附源码)
开发语言·人工智能·python·prompt·aigc
Song_RsHt14 小时前
Redis 与微服务,什么场景下无可替代
java·redis·后端·学习·微服务
学长毕设14 小时前
基于SpringBoot的建筑材料管理系统-附源码
java·spring boot·后端
lhbweilai14 小时前
分析FreeRTOS内核对象API的源码实现(八)
c语言·开发语言·stm32·单片机
努力努力再努力wz14 小时前
【C++高阶系列】C++20 协程底层原理:函数为什么能暂停?从状态机到 Task,彻底串起挂起、恢复与协程调度
开发语言·c++·c++20·1024程序员节
摸爬滚打的小李15 小时前
关于 Arthas
java·后端
咩咩啃树皮15 小时前
JavaScript 中 this 指向为什么总在变?
开发语言·前端·javascript
程序员清风15 小时前
算法题中的边界条件、测试与调试
开发语言·算法·kotlin
砚底藏山河15 小时前
python量化实操:冷热分层存储
java·开发语言·python·金融
十五年专注C++开发15 小时前
pybind11:一个跨C++和Python平台的编程库
开发语言·c++·python·pybind11