Java:List列表去重有序和无序

目录

    • 待去重列表
    • HashSet去重(不保证顺序)
    • TreeSet去重(不保证顺序)
    • LinkedHashSet去重(保证顺序)
    • 遍历List去重(保证顺序)
    • Java8中Stream流处理(保证顺序)
    • 参考文章

待去重列表

// 列表
List<String> list = new ArrayList<>();
list.add("Tom");
list.add("Jack");
list.add("Steve");
list.add("Tom");System.out.println(list);
// [Tom, Jack, Steve, Tom]

HashSet去重(不保证顺序)

// 去重
Set<String> set = new HashSet<>(list);
List<String> newList = new ArrayList<>(set);System.out.println(newList);
// [Tom, Steve, Jack]

TreeSet去重(不保证顺序)

// 去重
Set<String> set = new TreeSet<>(list);
List<String> newList = new ArrayList<>(set);System.out.println(newList);
// [Jack, Steve, Tom]

LinkedHashSet去重(保证顺序)

// 去重
Set<String> set = new LinkedHashSet<>(list);
List<String> newList = new ArrayList<>(set);System.out.println(newList);
// [Tom, Jack, Steve]

遍历List去重(保证顺序)

// 去重
List<String> newList = new ArrayList<>();
for (String value : list) {if(!newList.contains(value)){newList.add(value);}
}System.out.println(newList);
// [Tom, Jack, Steve]

Java8中Stream流处理(保证顺序)

// 去重
List<String> newList = list.stream().distinct().collect(Collectors.toList());System.out.println(newList);
// [Tom, Jack, Steve]

参考文章

  1. List 去重的 6 种方法,这个方法最完美!

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

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

相关文章

Java的ThreadLocal使用

ThreadLocal 是 Java 提供的一个用于创建线程局部变量的类。这些变量不同于它们的正常变量&#xff0c;因为每一个线程都会拥有这个变量的一个独立副本&#xff0c;因此每个线程都可以独立地更改自己的副本&#xff0c;而不会影响其他线程所拥有的副本。 定义 ThreadLocal 是…

python概率分析:为什么葫芦娃救爷爷是一个一个地救成功率最高?

关键词&#xff1a; Python 、葫芦娃 、 概率计算 、 数学 、 建模 前言 过完年了返工后想起了小孩子们爱看的葫芦娃救爷爷的动画片&#xff0c;葫芦娃为什么是一个一个前去救爷爷&#xff0c;为什么不等着七个一起去救爷爷。带着这个疑问&#xff0c;我决定今天用数学的角度…

Linux开发工具使用

一、Linux软件包管理器 yum 软件包和软件包管理器, 就好比 "App" 和 "应用商店" &#xff0c;我们现在要安装的yum就是相当于在我们的Linux终端安装一个"应用商店"。 但使用yum时&#xff0c;我们一定要保证主机(虚拟机)网络畅通!这点也非常好理…

分类问题经典算法 | 二分类问题 | Logistic回归:公式推导

目录 一. Logistic回归的思想1. 分类任务思想2. Logistic回归思想 二. Logistic回归算法&#xff1a;线性可分推导 一. Logistic回归的思想 1. 分类任务思想 分类问题通常可以分为二分类&#xff0c;多分类任务&#xff1b;而对于不同的分类任务&#xff0c;训练的主要目标是…

001-CSS-水平垂直居中布局

水平垂直居中布局 方案一&#xff1a;弹性盒子布局方案二&#xff1a;绝对定位 transform方案三&#xff1a;margin 绝对定位&#xff0c;四个方向为零方案四&#xff1a;绝对定位 margin方案五&#xff1a;绝对定位 calc 方案一&#xff1a;弹性盒子布局 &#x1f4a1; T…

【Python 常用脚本及命令系列 6 -- python 读取C文件中数组中的数据】

文章目录 python 读取C文件中数组中的数据 python 读取C文件中数组中的数据 例如可以使用 python 将 test.c 文件中数组&#xff1a; unsigned short image[] { 0x125, 0x123&#xff0c; 0x88, 0x99 }中的所有数据生成到一个列表 list_num 中&#xff0c;并将其打印出来。 …

RabbitMQ(三):AMQP协议

目录 1 AMQP协议1.1 AMQP协议介绍1、AMQP是什么2、消息代理中间件的职责 1.2 AMQP 0-9-1模型1、AMQP的工作过程2、交换器和交换器类型3、队列队列属性队列名称队列持久化 1.3 几个概念1、绑定2、消费者3、消息确认4、预取消息5、消息属性和有效载荷&#xff08;消息主体&#x…

HTML5:七天学会基础动画网页7

CSS3高级特效 2D转换方法 移动:translate() 旋转:rotate() 缩放:scale() 倾斜:skew() 属性:transform 作用:对元素进行移动,旋转,缩放,倾斜。 2D移动 设定元素从当前位置移动到给定位置(x,y) 方法 说明 translate(x,y) 2D转换 沿X轴和Y轴移…

2024 极术通讯-云+大模型的2024格局

导读&#xff1a;极术社区推出极术通讯&#xff0c;引入行业媒体和技术社区、咨询机构优质内容&#xff0c;定期分享产业技术趋势与市场应用热点。 芯方向 FunASR 语音大模型在 Arm Neoverse 平台上的优化实践 FunASR 是阿里巴巴达摩院开发的开源的基于 Paraformer 的大模型语…

String字符串的常见方法总结

一、获取字符串的长度:str.length() String str "Hello World&#xff01;";int strLength str.length(); System.out.println(strLength);//输出&#xff1a;12 二、字符串的比较:str.equals() //比较两个字符串是否相等String str1 "Chinese";Stri…

概率基础——极大似然估计

概率基础——极大似然估计 引言 极大似然估计&#xff08;Maximum Likelihood Estimation&#xff0c;简称MLE&#xff09;是统计学中最常用的参数估计方法之一&#xff0c;它通过最大化样本的似然函数来估计参数值&#xff0c;以使得样本出现的概率最大化。极大似然估计在各…

学习JAVA的第十三天(基础)

目录 API之Arrays 将数组变成字符串 二分查找法查找元素 拷贝数组 填充数组 排序数组 Lambda表达式 集合的进阶 单列集合 体系结构 Collection API之Arrays 操作数组的工具类 将数组变成字符串 //将数组变成字符串char[] arr {a,b,c,d,e};System.out.println(Arra…

Installing Git (安装 Git)

Installing Git [安装 Git] 1. Installing Git1.1. Description1.2. Installing on Linux (在 Linux 上安装)1.3. Installing on macOS (在 macOS 上安装)1.4. Installing on Windows (在 Windows 上安装)1.5. Installing from Source (从源代码安装) 2. sudo apt-get install …

Python常用验证码标注和识别(需求分析和实现思路)

目录 一、需求分析 图像验证码识别&#xff1a; 文本验证码识别&#xff1a; 二、实现思路 三、案例与代码 四、总结与展望 在当今的数字时代&#xff0c;验证码&#xff08;CAPTCHA&#xff09;作为一种安全机制&#xff0c;广泛应用于网站和应用程序中&#xff0c;以防…

Method Not Allowed (GET): /user/logout/

在使用 DJango 框架使用框架默认的【登出】视图时&#xff0c;发现报错如下&#xff1a; Method Not Allowed (GET): /user/logout/ Method Not Allowed: /user/logout/ 退出部分的代码原先如下&#xff08;登出部分见第6行&#xff09;&#xff1a; <p><a href"…

PySide6实现socket通信程序

目录 一:实现思路 二:实现代码 三:完整代码和界面 一:实现思路 在PySide6中,服务端可以使用QTcpServer类来实现一个Socket服务器端,这个类可以便捷地创建TCP服务器。在客户端可以使用QTcpSocket实现Socket通信,并使用QTextEdit来显示消息。

MySQL 8.0.35 企业版安装和启用TDE插件keyring_encrypted_file

本文主要记录MySQL企业版TDE插件keyring_encrypted_file的安装和使用。 TDE说明 TDE( Transparent Data Encryption,透明数据加密) 指的是无需修改应用就可以实现数据的加解密&#xff0c;在数据写磁盘的时候加密&#xff0c;读的时候自动解密。加密后其他人即使能够访问数据库…

Unity 摄像机的深度切换与摄像机画面投影

摄像机可选&#xff1a;透视、正交 正交类似投影&#xff0c;1比1 透视类似人眼&#xff0c;近大远小 摄像机投影 在项目中新建&#xff1a;渲染器纹理 将新建纹理拖动到相机的目标纹理中 新建一个平面&#xff0c;将新建材质组件放到平面中即可。 相机深度切换 使用代…

93. 通用防重幂等设计

文章目录 一、防重与幂等的区别二、幂等性的应用场景三、幂等性与防重关系四、处理流程 一、防重与幂等的区别 防重与幂等是在 Web 应用程序和分布式系统中重要而又非常常见的问题。 防重 防重是指在多次提交同样的请求过程中&#xff0c;系统会检测和消除重复的数据&#xf…

每天一个数据分析题(一百八十三)

以下哪一项不是逻辑回归模型的特点&#xff1f; A. 因变量通常为二分类型变量 B. 自变量可以是分类型或连续型变量 C. 适用于处理连续自变量与二分类型因变量之间的关系 D. 通过logit转换&#xff0c;输出结果为实数域内的数值 题目来源于CDA模拟题库 点击此处获取答案