首页 > 编程语言 > 详细

Java 单个集合去重与两个集合去重

时间:2019-09-15 11:31:47      阅读:113      评论:0      收藏:0      [点我收藏+]

一、单个集合去重

描述:

  去掉一个集合里重复的元素:将list集合转成hashSet集合,hashSet有自动去重的功能,再利用去重后的hashSet集合初始化一个新的list集合,此时这个list就是去重后的集合。

代码如下:

import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
public class Main {
    public static void main(String[] args) {
        ArrayList l2 = new ArrayList(Arrays.asList("111","111","ttt","eee","222","333","ttt","eee","222"));
        pastLeep(l2);
    }
    public static void pastLeep(List<String> list){
        System.out.println("list = [" + list + "]");
        List<String> listNew=new ArrayList<>(new HashSet(list));
        System.out.println("listNew = " + listNew);
    }
}

技术分享图片

 

 

二、两个集合去重

描述:

  在两个集合里去除同时存在的元素:定义一个临时集合,将第一个集合里的所有元素全部添加到临时集合中,从第一个集合里移除在第二个集合里同时存在的全部元素,再从第二个集合里移除掉在第一个集合(临时集合)里同时存在的全部元素。

代码如下:

import java.util.ArrayList;
import java.util.Arrays;
public class Main {
    public static void main(String[] args) {
        ArrayList l1 = new ArrayList(Arrays.asList("111","222","333","444","555"));
        ArrayList l2 = new ArrayList(Arrays.asList("111","ddd","sss","eee","222","333","ttt"));
        Deduplication(l1,l2);
    }
    private static void Deduplication(ArrayList<String> list1,ArrayList<String> list2){
        ArrayList tempList = new ArrayList();
        //将list1里的所有元素添加到tempList里
        tempList.addAll(list1);
        //从list1中移除掉同时在list2中存在的元素(去重)
        list1.removeAll(list2);
        //从list2中移除掉同时在list1中存在的元素(去重)
        list2.removeAll(tempList);
        
        System.out.println(list1);
        System.out.println(list2);
    }
}

技术分享图片

 

Java 单个集合去重与两个集合去重

原文:https://www.cnblogs.com/l199616j/p/11521500.html

(1)
(1)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!