NutzCN Logo
分享 java8 多个list对象用lambda求差集
发布于 1547天前 作者 Hamming 2058 次浏览 复制 上一个帖子 下一个帖子
标签:

业务场景:调用同步接口获取当前全部有效账户,数据库已存在部分账户信息,因此需要筛选同步接口中已存在本地的帐户。

调用接口获取的数据集合

List<AccountVo> list = response.getData().getItems();

本地查询出来的账户集合

List<Account> towList = accountRepository.findAll();

筛选差集代码

List<AccountVo> distinctByUniqueList = list.stream()
        .filter(item -> !towList.stream()
        .map(e -> e.getOwnerId())
        .collect(Collectors.toList())
        .contains(item.getOwnerId()))
        .collect(Collectors.toList());

就这样获取到需要处理的数据。

0 回复
添加回复
请先登陆
回到顶部