Java实现集合去重

java借助Set集合的去重机制实现对象集合的去重 文章目录前言一、引入lombok二、开始执行去重1.基本数据类型去重2.对象集合去重的实现总结 前言 使用Set集合的去重机制,结合lombok注解实现基本数据类型集合,对象集合的去重 一、引入lombok 在pom.xml文件中,加入以下依赖: <!--lombok注解--> <dependency> <groupId>org.projectlombok</groupId> <a. 阅读详情

六种方法,转载自:https://www.cnblogs.com/zhaoyan001/p/11737961.html

  1. 循环list中的所有元素然后删除重复
public   static   List  removeDuplicate(List list)  {       
  for  ( int  i  =   0 ; i  <  list.size()  -   1 ; i ++ )  {       
      for  ( int  j  =  list.size()  -   1 ; j  >  i; j -- )  {       
           if  (list.get(j).equals(list.get(i)))  {       
              list.remove(j);       
            }        
        }        
      }        
    return list;       
}
  1. 通过HashSet踢除重复元素
public static List removeDuplicate(List list) {   
    HashSet h = new HashSet(list);   
    list.clear();   
    list.addAll(h);   
    return list;   
} 
  1. 删除ArrayList中重复元素,保持顺序
// 删除ArrayList中重复元素,保持顺序     
 public static void removeDuplicateWithOrder(List list) {    
    Set set = new HashSet();    
     List newList = new ArrayList();    
   for (Iterator iter = list.iterator(); iter.hasNext();) {    
         Object element = iter.next();    
         if (set.add(element))    
            newList.add(element);    
      }     
     list.clear();    
     list.addAll(newList);    
    System.out.println( " remove duplicate " + list);    
 }
  1. 把list里的对象遍历一遍,用list.contains(),如果不存在就放入到另外一个list集合中
public static List removeDuplicate(List list){  
        List listTemp = new ArrayList();  
        for(int i=0;i<list.size();i++){  
            if(!listTemp.contains(list.get(i))){  
                listTemp.add(list.get(i));  
            }  
        }  
        return listTemp;  
    }
  1. retainAll和retainAll用法
List<String> a = Arrays.asList ("a", "f", "e", "x", "w");
List<String> b = Arrays.asList ("a", "b", "c", "d");
List<String> c = null;
List<String> d = null;
c  = new ArrayList(a);
c.retainAll(b); // 得到  a, b 的交集。
d = new ArrayList(a);
d.addAll(b); // 合并 a, b 值到 d 中。
d.removeAll(c);// 去掉交集 c 中的所有条目。留下只出现在a 或 b 中的条目。
System.out.println(d);
  1. 用JDK1.8 Stream中对List进行去重:list.stream().distinct();
List<String> a = new ArrayList<> ();
        a.add("a");
        a.add("b");
        a.add("b");
        List<String> b = new ArrayList<> ();
        b.add("a");
        b.add("c");
        b.add("b");
        a.addAll(b);
        List list=(List) a.stream().distinct().collect(Collectors.toList());
        System.out.println(list);

再次注明:转载自https://www.cnblogs.com/zhaoyan001/p/11737961.html

JAVA入门到精通- 重写方法实现集合对象去重 建个工具类 重写方法实现集合对象去重 比较实用 方法一、根据某个字段去重 /** * 根据某个字段去重 * * @param carList * @return * @author preference */ public static List<Car> distinctBycar(List<Car> carList) { Set<Car> set = new TreeSe... 阅读详情

相关推荐

Java学习之路- 通过重写方法实现集合对象去重

首先,我们需要明确一点,Java提供了多种类型的集合类来存储和操作集合对象,比如ArrayList、HashSet等。需要注意的是,上述示例中使用的是ArrayList作为集合对象,但这并不意味着只有ArrayList才能实现去重。实际上,根据具体的需求和场景,我们可以选择不同的集合类来进行去重操作,只需相应地调整代码即可。在实际开发中,当我们遇到需要对集合对象进行去重的情况时,通过重写方法是一种常用且效果不错的解决方案。通过本文的讲解,相信大家对通过重写方法实现集合对象的去重有了更加清晰的认识。

DevGOOD的博客 146

【Java】一行代码进行集合去重

一行代码对List,Set,Queue集合进行去重

Zhangsama1的博客 444

Java - 通过重写方法实现集合对象去重

假设我们有一个包含重复元素的List集合,我们希望移除其中的重复元素并得到一个去重后的集合。在Java编程中,我们经常需要对集合对象进行去重操作,即移除重复的元素。在本文中,我们将介绍如何通过重写方法实现集合对象的去重。通过重写方法,我们可以实现集合对象的去重操作。最后,我们分别输出了带有重复元素的List集合和去重后的Set集合。这样,我们就可以轻松地对集合对象进行去重操作,提高程序的效率和准确性。可以看到,通过转换为Set集合,我们成功地移除了重复元素。类的重写方法,我们成功地实现了自定义的去重规则。

DevScribe的博客 135

Java集合去重的几种方法

Java集合去重的几种方法

qinxun2008081的博客 4062

西门子S7-1200的PID应用(恒温热水器)

物料清单:1200PLC一台,模拟量输入模块SM1231(PLC自带的输入通道不支持4-20mA电流输入)一个,PT100一个,温度变送器,热得快,固态继电器。 第一步,硬件接线; 第二步,新建1200工程,添加PLC和模拟量输入模块,修改模块的模拟量输入类型为4-20mA,模拟量模块的IO地址为96-103(8个字); 第三步,新建循环组织块OB30,循环时间选择默认点1...

weixin_30835649的博客 6549

飞书云文档API操作详细介绍

开通云文档API、python程序调用飞书api、飞书获取app_id和app_secret、

Brother_ning的博客 1万+

java基础自学

SUN公司为了抢占市场先机,在1991年成立了一个由詹姆斯·高斯林(James Gosling)领导,名为“Green”项目小组,目的是开发一种能够在各种消费性电子产品上运行的程序架构。1994年,项目小组看到了浏览器在未来的发展前景,于是决定将OaK应用于万维网。1995年,他们用OaK语言研发了一种能将小程序嵌入到网页中执行的技术——Applet,由于Applet不仅能嵌入网页,还可随同网页在网络上进行传输,这让无数的程序员看到了OaK这门语言,与此同时,OaK正式更名为Java。

weixin_45812603的博客 277

从412到200:一步步拆解瑞数6代jsvmp的cookie生成与验证流程

本文深入解析瑞数6代JSVMP的动态安全防护机制,详细拆解从412到200状态的cookie生成与验证流程。通过剖析JSVMP虚拟机核心机制、动态元数据解析及环境检测绕过策略,为逆向工程师提供实用的技术解决方案,帮助突破瑞数6代的高级防御体系。

weixin_30342209的博客 508

Java【List】去重的 6种方法

Set集合去重,JDK8特性去重,迭代器去重和List自带contains去重

简单发点工作中用到的,或者记录下小知识点 5万+

标准高斯过程回归(Gaussian Processes Regression, GPR)从零开始,公式推导

标准高斯过程回归从零开始公式推导

qq_43587949的博客 1万+

【AUTOSAR-DEM】-2.4-APP SWC如何读取MIL灯状态以及配置MIL灯

该篇博文将告诉您: MIL(Malfunction Indicator Lamp/Light)灯的点灯和灭灯过程; DEM模块如何配置MIL灯; APP SWC如何获取MIL灯状态。

「汽车电子助手」的博客 1712

Bean 在 Spring 中代表什么含义,为什么这样命名?

但问题是,“元素”(element)、“单元”(unit)、“原子”(atom)、“组件”(component)等词在计算机相关领域已经或日后可能成为该领域的专有名词,如果使用这种命名,有可能发生“二义性”的冲突,如对初学者来说的概念的冲突、在代码中变量名的冲突等等。Bean在Spring框架中代表一种基本单元,在Spring框架中的几乎所有的预置对象都是一种“Bean”,对数据的各种处理也是以Bean为单位来进行的,用户自定义数据也需要构建成Bean之后才能处理。...

暗诺星刻的博客 4467

备考路上的学习笔记:我的软考高级架构师复盘与更新计划

本专栏基于作者备考软考高级系统架构设计师的真实经验,分为考前突击、基础夯实、核心突破、案例实战和论文通关五大模块。内容涵盖计算机体系结构、操作系统、数据库等核心知识,提供案例解析和论文范文。作者承诺持续更新考纲内容、真题复盘及互动答疑,旨在帮助考生系统备考,将个人踩坑经验转化为实用指南,陪伴考生共同完成从知识碎片到体系构建的蜕变历程。

qq837993702的博客 2295

java实体类集合按某个字段去重_List集合中的对象按照某个字段去重实现

package com.liying.banana.user;import java.util.ArrayList;import java.util.Comparator;import java.util.List;import java.util.Set;import java.util.TreeSet;import com.liying.banana.order.vo.OrderVO;/***...

weixin_36204061的博客 815

【人工智能】Claude服务访问受限报错的技术分析与解决方案

在使用Claude系列大模型服务的过程中,部分用户会遇到服务不可用的标准化拦截提示,导致无法正常访问模型核心能力。本文针对该类报错进行完整技术拆解,明确报错根因与底层校验逻辑,并分场景提供合规、可落地的排查与解决方案,同时规避相关使用风险。

奶爸的编程之路,也就一周冷个三天 2675

YOLOv8改进 | 主干篇 | 利用MobileNetV1替换Backbone(轻量化网络结构)

本文给大家带来的改进机制是MobileNetV1,其是专为移动和嵌入式视觉应用设计的轻量化网络结构。这些模型基于简化的架构,并利用深度可分离卷积构建轻量级深度神经网络,其引入了两个简单的全局超参数,用于在延迟和准确性之间进行有效的权衡。实验表明,MobileNets在资源和准确性的权衡方面表现出色,并在多种应用(如对象检测、细粒度分类、面部属性识别和大规模地理定位)中展现了其有效性,这个模型非常适合轻量化的读者来使用。适用检测目标:轻量化网络结构适合轻量化的读者。

Snu77的博客 3966

java mongo 去重_JAVA-List集合去除重复对象的实现

今日学习笔记:打开久违的IDEA,项目功能迭代,增加一个小小的去重功能。JAVA-List集合去除重复对象的实现中心核心思想:对象重复是指对象里面的变量的值都相等,并不定是地址。list集合存储的类型是基础类型还比较好办,直接把list集合转换成set集合就会自动去除。三个步骤:当set集合存储的是对象类型时,需要在对象的实体类里面重写public boolean equals(Object ob...

weixin_34289439的博客 137

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

java的set实现原理_Java Set集合去重的原理及实现

在开发中经常使用到Set集合去重,那么去重的原理是怎样实现的呢?在此文章记录一下去重原理!!!下面是set集合类图 下面我们来跟踪一下执行过程;首先我们实例化一个Set对象;Set<8大基本类型> set = new HashSet<8大基本类型>();set.add(8大基本类型);add操作会调用HashMap中的add方法;public boolean add(E e...

weixin_28807529的博客 1564

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

java 迭代器去重_java入门 -- List集合接口的实现类ArrayLIst以及集合去重

import java.util.ArrayList;import java.util.Iterator;/** Collection* -----| List 实现List接口的集合类,其对象中的元素是有序且可重复* ---------| ArrayList List接口实现类特点是维护了一个ArrayList数组实现的,特点:查询快,增删慢;因为数组的地址是连续的,* 所以查询速度快,而增删需...

weixin_39679718的博客 323

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

[Java]使用StreamAPI优雅实现集合元素去重与排序

Java 8引入的Stream API为集合操作带来了革命性的改变。Stream允许开发者以声明式方式处理数据集合,通过流水线式的操作让代码更加简洁易读。与传统的集合操作相比,Stream API提供了更高效的数据处理方式,特别是在处理大数据量时表现尤为出色。处理自定义对象时,需要确保对象正确重写了equals()和hashCode()方法。如果这两个方法实现得当,distinct()方法就能准确识别重复对象。对于复杂对象,还可以通过map()操作先提取需要去重的字段。

oVxnLwGq的博客 422

java 实现数组去重(集合转换)

public static void main(String[] args) { int[] nums = { 5, 6, 6, 6, 8, 8, 7 }; List<Integer> numList = new ArrayList<Integer>(); for (int i : nums) numList.add(i); Set&l...

weixin_34337381的博客 466

JAVA实现List集合去重

Java去重list集合两种简单的方法 List<String> list = new ArrayList<String>(); list.add("java"); list.add("python"), list.add("c++"); list.add("java"); list.add("c++"); system.out.println(list); 输出:[JA...

zf_csdn123的博客 473

Java中List集合元素去重的实现

知识点: List与Set的区别 List: 是有序的,元素可以重复的 ,常用的实现类有:ArrayList ,LinkedList Set: 是无序的,元素不可以重复的,常用的实现类有:HashSet 方法之一:利用HashSet实现去重 测试代码如下: public static void main(String[] args) { List<String>...

李公子的博客 2354

Java实现根据某个字段对集合进行去重并手动选择被保留的对象

需求说明: 现有对象Student(id,name,age),并有List<Student> students集合,要求:对students集合中的对象按age去重,并保留id较大的那个对象。 Student public class Student { private int id; private String name; private String ...

bernardGao94的博客 523

Java实现对List集合去重的几种方法

我们工作中时常会遇到对一个List集合做去重处理的场景,今天列举几种对List去重的方法。 方法一:

qq_38681023的博客 6323
上一篇: JAVA实现去掉字符串中第一个非0数字前的字符
下一篇: Oracle在where语句后添加日期限制条件
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值