stream去重_重复数据如何处理?List集合去重的四种方式

List集合在Java日常开发中是必不可少的,只要懂得运用各种各样的方法就可以大大提高我们开发的效率,适当活用各种方法才会使我们开发事半功倍。但是,有时候难免会遇到集合里的数据是重复的,需要进行去除。

今天,就给大家讲解一下List集合去重的的四种方式。

双重for循环去重

使用两个for循环遍历集合所有元素,然后进行判断是否有相同元素。

两两比较如果相等的话就删除第二个 :

例如:1 1 1 3 2 1 2 4

先让第一个1 即arr[0]与后面的一个个比较,如果后面的值等于arr[0] 删除后面的值

第一次结束后的结果是 1 3 2 2 4 ,删除了后面所有的1 。

同理,第二次、第三会删除与自己相同的元素。

HashSet去重

背过特性的都知道HashSet可以去重,把List集合所有元素存入HashSet对象,接着把List集合元素全部清空,最后把HashSet对象元素全部添加至List集合中,这样就可以保证不出现重复元素。

Java8新特性stream去重

对于大数据,采用Stream相关函数去重是最简单的了。Java8中Stream提供了对List 做简单去重的处理,通过调用distinct方法,可以实现对类型Integer、Long、Char 等基本类型以及String类型的去重。需要注意的是,无法对自定义对象进行去重处理。

Lambda表达式去重

Lambda表达式是Java8中提供的一种新的特性,它支持JAVA也能进行简单的“函数式编程”。利用Lambda表达式能很方便的对list对象进行去重,而且不会造成代码入侵。不过,Lambda表达式只能出现在目标类型为函数式接口的上下文中。

你平时List集合去重,方式用对了吗?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/527331.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php强制转成字符串,php怎么强制转成字符串

php强制转成字符串的方法:首先创建一个PHP示例文件;然后定义一个变量;最后通过PHP中的string方法强制转换成字符串即可。本文操作环境:windows7系统、PHP7.1版,DELL G3电脑PHP强制转换类型获取数据类型 :1.如果想查看某…

虚幻4模型提取_【UnrealEngine4】从虚幻四的着色模型到NPR

本文主要分享虚幻四中着色器的使用技巧与如何添加自己的着色模型的方式。(正在设计的一个像素风格的渲染流程,同样采用本文的方法,对引擎的着色模型进行了改造,可以接受天光/点光等的自定义照明效果)鄙人消失了一个月左右,又回来了…

可观测性PHP秩判据,线性系统的可控性与可观测性

现代控制理论中用状态方程和输出方程描述系统,输入和输出构成系统的外部变量,而状态为系统的内部变量,这就存在着系统内的所有状态是否可受输入影响和是否可由输出反映的问题,这就是可控性和可观测性问题。如果系统所有状态变量的…

ubuntu虚拟机进程被杀死_Ubuntu -- 查看和杀死进程

今天在netbeans中关闭webrick时,发现没有关闭掉,打入localhost:3000 依然显示页面,发现无法从nb中再次关闭只有进入ubuntu的进程下关闭查看进程:1, ps -e2, fengfeng:~$ sudo netstat -antupActive Internet connections (servers and established)Proto Recv-Q Send-Q Local…

matlab中的nlinfit,matlab中nlinfit问题!!!!!!!!!!!!

matlab中nlinfit问题!!!!!!!!!!!!mip版 关注:272 答案:3 悬赏:40解决时间 2021-01-19 04:20已解决2021-01-18 13:28muinline(beta(…

springboot幂等性_请问,springboot项目支付接口设计,如何保证支付的幂等性,并能给前端反馈友好的提示?...

什么是幂等性?幂等是一个数学与计算机学概念,在数学中某一元运算为幂等时,其作用在任一元素两次后会和其作用一次的结果相同。“ 在计算机中编程中,一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。幂等函…

php图片旋转显示不出来的,php – 我服务的图像不正确,它们都显示为旋转90度

在Exif中设置了方向.图片没有旋转phisicaly.图像查看器可以使用它,但标签中的浏览器不会旋转它.你也可以“飞行”旋转它.只需通过exif_read_data()获取Exif信息,如果在’Orientation’中有3(180deg),6(90CW)或8(-90CCW),则旋转它// dump the picture and stop the script$sourc…

bootstrap 滚动 进度条_bootstrap实现动态进度条效果

Bootstrap的动态进度条:html: 创建一个modal 这里使用fade先将modal隐藏起来,然后modal里面嵌入progress 代码很简单保存中:{{length}}%PS:关于模态框:如果你想实现点击空白处不关闭模态框,可以在这里初始化modal的参数&#xf…

电机控制系统php,电机控制系统的未来发展变化趋势

在智能化生产系统的发展过程之中,网络化分布式生产设备的实现意味着我国机器设备之间可以达到信息沟通的能力,而在这种沟通之中良好的控制系统则承担了枢纽的职责。在这种地机控制系统的发展之中迎合了我国智能联网时代的发展需求,将人机交互…

天宫初级认证答案_百度初级认证试题答案

仅供参考1. 推广商户想了解关键词在一地的推广情况,可使用:(单选题)估算工具 批量工具 推广实况工具 账户分析工具2. 在推广计划级别,可以进行以下哪些操作:(多选题)添加关键词 设置否定关键词 设置IP 排除 设置每日预算3. 关于账…

ci php做记录删除,CI(CodeIgniter)框架中的增删改查操作_PHP教程

CodeIgniter的数据函数类在 \system\database\DB_active_rec.php代码如下:class ModelName extends CI_Model{function __construct(){parent::__construct();}}连接数据库:$this->load->database();代码如下:classModel_name extends CI_Model{function __co…

python list 底层实现的数据结构_Python数据结构大起底——list篇

python内置的多种数据结构为编程提供了相当的便利,灵活的使用python中的内置数据类型可以达到事半功倍的效果,本文是对Python一些常用数据类型的整理,并列举出来了一些使用技巧。使用最多的数据结构 listlist内置了许多方法,常用的…

微信wechat.class.php,laravel使用组件实现微信网页授权登入

laravel框架中的实现简单实现微信网页授权登入首先引入基于laravel的easywechat的组件,laravel版本5.8$ cd laravel$ composer require "overtrue/laravel-wechat:~5.0"然后呢因为下载过程会比较缓慢所以可以先根据官方提供的方式配置一下该组件的中间件根据官方提供…

linux 扩展挂载盘大小_Linux 添加挂载硬盘(包含挂载大于2T以上硬盘)

转自:http://blog.csdn.net/season_hangzhou/article/details/36423223由于事先规划问题或者业务需求量激增,总会出现机器硬盘空间不够用的情况所以常常需要新增硬盘,操作方法如下一、安装硬盘到物理机上。二、查看硬盘是否正确安装。使用“f…

oracle 存储过程打印语句,oracle学习之第一个存储过程:打印Hello World

--第一个存储过程:打印Hello World/*调用存储过程2种方式:1、exec sayhelloworld();2、beginsayhelloworld();sayhelloworld();end;/*/create or replace procedure sayhelloworld --假设这个存储过程存在就replace替换否则create创建,这里创…

oracle 运维入门,Oracle日常基本运维命令及基本体系结构

Oracle日常基本运维命令及基本体系结构发布人:中嘉和信发布时间:2020.05.11来源:运维派中嘉和信北京机房以康盛机房、亦庄国际机房、四季青机房为主,作为互联网数据中心集成服务领域的标杆企业,中嘉和信一直以客户需求…

qc成果报告范例_质量引领创新 扬子江勇夺医药行业QC“十五连冠”

近日,第40届全国医药行业QC小组成果发布交流会圆满落幕,扬子江药业集团勇夺QC一等奖总数“十五连冠”。会上,业界人士共享新成果、带来新思考、集聚新视野。扬子江人凭借高标准、高要求的精益求精的创新精神,在产品质量、技术、人…

php关联图片,PHP关联链接添加方法

PHP关联链接添加方法为了优化内链,我们需要将内容添加上关键链接,那内容如果添加关联链接呢,怎么添加呢?下面小编带大家一起来看看详细内容,希望对大家有所帮助!方法一:手动编辑添加方法二:使用程序在输出…

mysql数据表中取几列_MySQL实现表中取出随机数据

MySQL是开放源代码,MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。 那么如何在MySQL实现表中取出随机数据呢?SELECT * FROM table_name ORDER BY rand() LIMIT 5;rand在…

获取php.ini配置信息,获得php所对应的配置文件(php.ini)信息

获得php所对应的配置文件(php.ini)信息[rootBIND9-master /usr/local/bin]# php --iniConfiguration File (php.ini) Path: /usr/local/etcLoaded Configuration File: /usr/local/Zend/etc/php.iniScan for additional .ini files in: /usr/local/etc/phpAdditional .…