简述Java List去重五种方法
程序员文章站
2022-05-20 17:26:56
前言
去重,对于很多场合必不可少。写此篇文章是因为在之前做某个画面中,我在数据库中进行 distinct 和 order by 去重,发现影响效率,故此在后台先做去重处理;所以记录此...
前言
去重,对于很多场合必不可少。写此篇文章是因为在之前做某个画面中,我在数据库中进行 distinct
和 order by
去重,发现影响效率,故此在后台先做去重处理;所以记录此文,已做参考:
num1:使用java8新特性stream进行list去重
public static void main(string[] args) { list list = new arraylist(); list.add(10); list.add(11); list.add(14); list.add(10); list.add(19); list.add(12); system.out.println("初始化集合为:"+list); list newlist = (list) list.stream().distinct().collect(collectors.tolist()); system.out.println("java8新特性stream去重后集合为:"+newlist); }
结果为:
num2:双重for循环去重
public static void main(string[] args) { list list = new arraylist(); list.add(10); list.add(11); list.add(14); list.add(10); list.add(19); list.add(12); system.out.println("初始化集合为:"+list); for (int i = 0; i < list.size(); i++) { for (int j = 0; j < list.size(); j++) { if(i!=j&&list.get(i)==list.get(j)) { list.remove(list.get(j)); } } } system.out.println("去重过后新集合为:"+list); }
结果为:
num3 :set集合判断去重,不打乱顺序
public static void main(string[] args) { list list = new arraylist(); list.add(10); list.add(11); list.add(14); list.add(10); list.add(19); list.add(12); system.out.println("初始化集合为:"+list); set set1 = new hashset(); list newlist = new arraylist(); for (object integer : list) { if(set1.add(integer)) { newlist.add(integer); } } system.out.println("set集合判断去重:"+newlist); }
结果为:
num4 : 遍历后判断赋给另一个list集合
public static void main(string[] args) { list list = new arraylist(); list.add(10); list.add(11); list.add(14); list.add(10); list.add(19); list.add(12); system.out.println("初始化集合为:"+list); list newlist2 = new arraylist(); for (object integer : list) { if(!newlist2.contains(integer)){ newlist2.add(integer); } } system.out.println("去重后新集合为:"+newlist2); }
结果为:
num5 : set 和 list 转换去重
public static void main(string[] args) { list list = new arraylist(); list.add(10); list.add(11); list.add(14); list.add(10); list.add(19); list.add(12); system.out.println("初始化集合为:"+list); set set2 = new hashset(); list newlist3 = new arraylist(); set2.addall(list); newlist3.addall(set2); system.out.println("set和list转换去重:"+newlist3); }
结果为:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
上一篇: php session 检测和注销