list集合去重方法

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

    • list集合去重方法
  • 前言
  • 一、HashSet去重
  • 二、list遍历再给一个新的list(用contains)
  • 三、set去重

前言

list常见的几种去重方法,昨天面试被问到出了用for遍历还有什么方法可以去重,很尴尬,没答上来,所以今天写在博客上,加深学习。


提示:以下是本篇文章正文内容,下面案例可供参考

一、HashSet去重

HashSet在存放对象的时候会判断是否为同一对象,HashSet是乱序,所以要存到新的list里才会保证顺序不会乱
代码如下(示例):

private void quCHong(List<String> list){Set<String> s = new HashSet<>();List<String> newList = new ArrayList<>();for(String n: list){if(s.add(n)){newList.add(n);}}sout(newList);
}

二、list遍历再给一个新的list(用contains)

代码如下(示例):

private void quCHong1(List<String> list){List<String> newList1 = new ArrayList<>();for(String n: list){if(!newList.contains(n)){newList.add(n);}}sout(newList1);
}

三、set去重

代码如下(示例):

private void quCHong3(List<String> list){Set s1 = new  HashSet();List newList = new  ArrayList();set.addAll(list);newList.addAll(s1);//List newList = new ArrayList(new HashSet(list));System.out.println(newList);}

面试:list集合去重相关推荐

  1. 面试官:如何实现 List 集合去重?

    作者 | 磊哥 来源 | Java面试真题解析(ID:aimianshi666) 转载请联系授权(微信ID:GG_Stone) 本文已收录<Java常见面试题>系列,开源地址:https: ...

  2. Java List去重 Lis集合去重 List去重效率对比 List去重复元素效率对比 List去重效率

    Java  List去重 Lis集合去重 List去重效率对比 List去重复元素效率对比 List去重效率 --- List 去重复元素的几种办法 一.概述 面试的时候,有个常见的问题:" ...

  3. List集合去重的一种方法

    前一段时间们需要对一个List<Model>集合去重,情况是该集合中会出现多个Name属性值相同的,但是其他属性值不同的数据. 在这种情况下,需求要只保留其中一个就好. 我觉得遍历和Has ...

  4. c#对象集合去重_C# List集合去重操作注意点

    今天调试代码时发现list的distinct方法在对引用类型操作时并没有去重,后来查阅资料发现list去重操作对象集合时比较的是对象的一个个引用地址, 因为集合里的对象都是一个个单独的实例,所以并不会 ...

  5. 一行代码 实现集合去重

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 1. 代码写法:(这是针对元素为基本数据类型的集合) 针对引用类型元素去重,可根据元素内多个元素去重 ...

  6. Java List<T>去重方法,引用类型集合去重

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 一.实体类中要重写比较方法equals,最好也重写hashcode方法 public class W ...

  7. python list去重时间复杂度_List集合去重的一种方法 z

    需要对一个List集合去重,情况是该集合中会出现多个Name属性值相同的,但是其他属性值不同的数据. 在这种情况下,需求要只保留其中一个就好. 我觉得遍历和HashSet都不是我想要的,便采用了一下方 ...

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

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

  9. List 集合去重的 3 种方法

    问题由来 在实际开发的时候,我们经常会碰到这么一个困难:一个集合容器里面有很多重复的对象,里面的对象没有主键,但是根据业务的需求,实际上我们需要根据条件筛选出没有重复的对象. 比较暴力的方法,就是根据 ...

  10. python数据库去重_python redis连接 有序集合去重的代码

    python redis连接 有序集合去重的代码如下所述: # -*- coding: utf-8 -*- import redis from constant import redis_ip, re ...

最新文章

  1. java changelistener_ListChangeListener.Change
  2. R语言使用ggpubr包的ggarrange函数组合多张结论图:使用ggpubr包将多个可视化结论嵌套起来输出(ggarrange组合ggarrange组合后的图像)
  3. 利用nginx的fastcgi_cache模块来做缓存
  4. leetcode51 --- solveNQueens
  5. [转] 数据库加锁 sql加锁的
  6. 工程监测管理平台、工程数据看板、工程总览、动态模型、数据分析、数据跟踪、建筑工地、数据报表、警点管控、现场记录、观测记录、测点管理、模型管理、文档管理、墙体下沉、成员管理、axure原型、产品原型
  7. android 显示文章内容,在Android中,RecyclerView在重新创建后没有显示任何内容
  8. 光线的方向:顺光、逆光、侧光、侧顺光、侧逆光、顶光、底光
  9. 使用python解决算法和数据结构--使用栈实现进制转换
  10. python模拟gps定位_python 模拟 GPS, $GPRMC $GPRMC
  11. c语言n的阶乘 longfact,如何定义函式fact(n) 计算n的阶乘:n!=1*2*……*n,函式返回值型别是double?...
  12. 执行throw后 后面代码还会执行吗?
  13. php curl添加授权Authorization 验证头
  14. 股市和庞氏骗局的类同之处
  15. 如何查看计算机操作过程,如何查看电脑使用记录?详细方法奉上
  16. 机器学习多分类器有哪些
  17. Android 上实现非root的 Traceroute -- 非Root权限下移植可执行二进制文件 脚本文件
  18. 埃及通信和信息技术部使用 OpenText ECM 内容服务平台为电子政务转型奠定基础
  19. Java注解(Annotation):请不要小看我!
  20. 基于Pytorch的神经网络之CNN

热门文章

  1. 屏幕取色:画板和ColorPix总结
  2. python deap_看完必会的 python DEAP遗传算法库讲解+实战(中级)
  3. linux桌面时间插件,Ubuntu gnome 桌面环境拓展插件介绍
  4. 华为HCIE云计算培训笔记第二天
  5. App 测试工具大全,收藏这篇就够了
  6. linux opendir路径_Linux目录操作函数:opendir/readdir/closedir
  7. 南京绿溢大厦远程预付费系统项目的设计与应用-安科瑞耿敏花
  8. 信号完整性之传输线理论(三)
  9. python中文版加密解密_python - 入门-对中英文加密解密
  10. 电子书格式转换 azw3 to epub (软件calibre的简单使用)