//方法1
//自己声明list
//思路,从list1中删除list2中相同的元素
//使用循环遍历对比的方式删除
//list1包含list2,list1多与list2
//结束得出list1为不相同元素
for(int i=0;i<list1.size();i++)
{
for(int j=0;j<list2.size();j++) {
if (list1.get(i).toString().equals(list2.get(j).toString()))//查找相同的元素
{
list1.remove(i);//删除list1下标为i的元素
i--;
//删除下标后list元素变少需要减少下标值,list不会和数组一样占用空间
break;
}
}
}
//方法2
//获取两个集合的差集
public List<?> removeAll(List<?> src, List<?> target) {
LinkedList<?> result = new LinkedList<>(src); //大集合用linkedlist
HashSet<?> targetHash = new HashSet<>(target); //小集合用hashset
Iterator<?> iter = result.iterator(); //采用Iterator迭代器进行数据的操作
while(iter.hasNext()){
if(targetHash.contains(iter.next())){
iter.remove();
}
}
return result;
}