java stream流实现对list集合去重,根据某一个属性去重,查询重复值操作_会吐水的杰尼龟的博客-程序员秘密_java stream合并list并去重

技术标签: java  list  开发语言  

list集合去重:

public List<WmsUserExcelVo> repetitionRepetition(List<WmsUserExcelVo> excelListl) {
    
        List<WmsUserExcelVo> newList = excelListl.stream().distinct().collect(Collectors.toList());
        return newList;
    }

list集合根据某一个属性去重:

public List<WmsMemoryExcelVo> repetitionRepetitions(List<WmsMemoryExcelVo> excelListl) {
    

        //对list数据 根据某个字段去掉重复数据 这里用的根据vin去除重复值,两个结果相同值去最后一条
        List<WmsMemoryExcelVo> newList = excelListl.stream().collect(Collectors.collectingAndThen
                (Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing
                        (WmsMemoryExcelVo::getVin))), ArrayList::new));
        return newList;
    }

list集合查询重复值:

List<WmsMemoryExcelVo> list = gressionList.stream()
                .collect(Collectors.toMap(e -> e, e -> 1, (a, b) -> a + b))
                .entrySet().stream()
                .filter(entry -> entry.getValue() > 1)
                .map(entry -> entry.getKey())
                .collect(Collectors.toList());
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_47397751/article/details/123089195

智能推荐

SMTP 协议,验证 Email 地址_Happy灬涛的博客-程序员秘密_smtp验证电子邮件地址

Email 是最常用的用户识别手段。开发者常常需要验证邮箱的真实性。一般的方法是,注册时向该邮箱发出一封验证邮件,要求用户点击邮件里面的链接。但是很多时候(比如要搞邮件营销时),拿到的是成千上万现成的 Email 地址,不可能通过回复确认真实性,这时该怎么办呢?答案就是使用 SMTP 协议。本文将介绍如何通过该协议验证邮箱的真假。另外,结尾处还有一则

防火墙技术_网工blog的博客-程序员秘密_防火墙技术

防火墙概述目前保护网络安全的主要手段就是构建防火墙基本思想:让所有对系统的访问通过某一点,并保护这一点,并尽可能地对外界屏蔽保护网络的信息和结构,它设置在可信的内部网络或不可信任的外界之间,可以实施比较广泛的安全政策来控制信息流,防止不可预料的潜在入侵破坏。防火墙的作用确保Intenet用户的所交换信息的安全,防火墙位于内部网络Web站点与Intenet之间的一个路由器或一台计算机安全策略有以下两种:凡是没有被列为允许访问的服务都是被禁止的凡是没有被列为禁止..

程序员的macbook都装了哪些软件_美梦如初的博客-程序员秘密_mac程序员常用软件

多年来体验不错的软件推荐,如果你刚入手macbook或正寻找体验好的软件,希望对你装机有所帮助。当然作为程序员,还涉及到相关的提高生产力很多人好奇程序员的电脑都有什么?一起来看看吧!系统增强iStat Menus:一款系统监控软件。可以监控CPU使用率,内存使用,硬盘读写,网络速率,温度等数据。界面美观大方,很不错。办公软件PhotoShop CC:必备软件,不必多说ImageOptim:是一款非常简单的图片大小优化工具。只要拖动图片到软件界面就可以自动把图片的大小进行优化.

jsBOM_DOM编程_羊咩咩a284811的博客-程序员秘密

BOM编程BOM,Browser Object Model 浏览器对象模型。BOM编程一句话概括:使用js代码控制浏览器。BOM编程原理:浏览器被封装了不同对象,可以通过浏览器对象控制浏览器。js提供了四个浏览器对象(window对象,history对象,location对象,screen对象),可以使用这些浏览器对象来控制浏览器。window对象:控制;浏览器窗口方法:alert() confirm() prompt() close() open() setInterval() clearI

JavaScript学习笔记(DOM编程案例)_少不入川。的博客-程序员秘密

文章目录1.前言2.实例2.1 获取文本框的value2.2 通过innerText和innerHTML来操作div和span2.3 关于正则表达式2.4 使用正则表达式验证邮箱地址2.5 使用正则表达式去除字符串前后的空白2.6 表单验证2.7 复选框的全选和取消全选2.8 获取下拉列表选中项的value2.9 显示系统时间2.10 内置支持类:Array1.前言1、JavaScript包括三大块:ECMAScript:JS的核心语法(ES规范 / ECMA-262标准)DOM:Document

随便推点

关于halcon内参转OpenCV内参_Caps_Qi的博客-程序员秘密

这样转靠谱吗?废话不多,先上代码void CCeresProblem::halconToCvParam(HTuple camParam, cv::Mat &amp;cvParam, cv::Mat &amp;D){ D = (cv::Mat_&lt;double&gt;(1, 5) &lt;&lt; 0, 0, 0, 0, 0); cvParam = (cv::Mat_&lt;double&gt;(3, 3) &lt;&lt; 0, 0, 0, 0, 0, 0, 0, 0, 0); HT

opencv和halcon标定参数结果对比_冯相文要加油呀的博客-程序员秘密_opencv对比halcon

在Stake Overflow里面有人讨论过这个问题,当我们用Opencv和halcon一起编程序的时候,需要考虑两者参数的不同,现在碰到的问题就是,我在已经知道内参矩阵的前提之下,想要求出外参矩阵,而内参是用halcon求出来的,vs中想用opencv写标定外参的程序,两者的参数表达方式不一样。c++ - HALCON to OpenCV Distortion Coefficients Convertion - Stack Overflow在HALCON中有两种标定方式首先是面扫描(多项...

java开发手机app教程,看完必懂_普通网友的博客-程序员秘密_java怎么做手机app

蚂蚁金服一面(技术面)JVM 内存分哪几个区,每个区的作用是什么?JVM有哪些回收算法,对应的收集器有哪些?GC 的两种判定方法 ?CMS 收集器与 G1 收集器的特点。hashmap源码问题HashMap、HashMap如何保证线程安全、ConcurrentHashMapHashMap底层结构 put操作讲一下GC 的两种判定方法 ?CMS 收集器与 G1 收集器的特点。java线程同步都有哪几种方式,在 Java 中 CycliBarriar 和 CountdownLatch 有什么区别.

fastapi(十三)-错误处理_vanexph的博客-程序员秘密_fastapi httpexception

在许多情况下你的api都需要向用户告知错误信息,like:1、客户端没有操作权限2、不能访问资源3、资源不存在等当向客户端响应错误信息的时候可以使用HTTPExceptionHTTPExceptioneg:from fastapi import FastAPI, HTTPExceptionapp = FastAPI()items = {"foo": "The Foo Wre...

API工具--apifox、apipost、yapi的区别(对比)_IT利刃出鞘的博客-程序员秘密_apifox apipost

现在的Java Web项目大都是前后端分离的,需要的人员有:后端、前端、测试。这时,接口文档就特别重要。 本文介绍apifox、apipost、yapi这三款接口文档工具的区别。

推荐文章

热门文章

相关标签