文章来源:https://blog.csdn.net/lihua5419/article/details/86543251
思路:
有两个list (分别为list1和list2,将list1里面的list2元素删除)
先将list1和list2去重,然后list1删除所有的list2,将list1添加到新集合里
public static void main(String[] args) {
//List<long>类型
List<Long> list=new ArrayList<>();
List<Long> list1=Arrays.asList(1L,2L,3L,4L,5L,6L);
List<Long> list2=Arrays.asList(4L,5L,6L);
HashSet h1 = new HashSet(list1);
HashSet h2 = new HashSet(list2);
h1.removeAll(h2);
list.addAll(h1);
System.out.println(list);//打印结果为:[1, 2, 3]
//List<String>类型 同上
List<String> s=new ArrayList<>();
List<String> st=Arrays.asList("a","b","c","d");
List<String> str=Arrays.asList("a","b","c");
HashSet hs1 = new HashSet(st);
HashSet hs2 = new HashSet(str);
hs1.removeAll(hs2);
s.addAll(hs1);
System.out.println(s);//打印结果为:[d]
}