Java 使用stream()两个集合根据元素中的某个字段取交集

list1<Bean1>和list2<Bean2> 根据元素的playerId属性 取交集

Bean1和Bean2 都含有playerId属性

List<Bean1> intersectList = list1.stream()
                        .filter(pe -> find1(pe.getPlayerId(), list2) > -1).collect(Collectors.toList());

辅助方法find1

复制代码
public int find1(long playerId,List<PlayerExtra> list) {
        int res = -1;
        for (int i = 0; i < list.size(); i++) {
            if (list.get(i).getPlayerId() == playerId) {
                res = i;
                break;
            }
        }
        return res;
    }
复制代码

 

本文作者:好Wu赖

本文链接:https://www.cnblogs.com/erlongxizhu-03/p/13510067.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   好Wu赖  阅读(11553)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示
💬
评论
📌
收藏
💗
关注
👍
推荐
🚀
回顶
收起