一、单个集合去重
描述:
去掉一个集合里重复的元素:将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 mainString[] args) { ArrayList l2 = new ArrayListArrays.asList"111","111","ttt","eee","222","333","ttt","eee","222")); pastLeepl2); } public static void pastLeepList<String> list){ System.out.println"list = [" + list + "]"); List<String> listNew=new ArrayList<>new HashSetlist)); System.out.println"listNew = " + listNew); } }
二、两个集合去重
描述:
在两个集合里去除同时存在的元素:定义一个临时集合,将第一个集合里的所有元素全部添加到临时集合中,从第一个集合里移除在第二个集合里同时存在的全部元素,再从第二个集合里移除掉在第一个集合(临时集合)里同时存在的全部元素。
代码如下:
import java.util.ArrayList; import java.util.Arrays; public class Main { public static void mainString[] args) { ArrayList l1 = new ArrayListArrays.asList"111","222","333","444","555")); ArrayList l2 = new ArrayListArrays.asList"111","ddd","sss","eee","222","333","ttt")); Deduplicationl1,l2); } private static void DeduplicationArrayList<String> list1,ArrayList<String> list2){ ArrayList tempList = new ArrayList); //将list1里的所有元素添加到tempList里 tempList.addAlllist1); //从list1中移除掉同时在list2中存在的元素(去重) list1.removeAlllist2); //从list2中移除掉同时在list1中存在的元素(去重) list2.removeAlltempList); System.out.printlnlist1); System.out.printlnlist2); } }