Java中如何判断一个集合中的一个元素不在另一个集合中?把不存在的元素移除

判断一个元素在集合中很容易,只需要遍历这个集合,然后与每个值进行比较,如果有相等的,那么就存在在集合中,然后反过来,就是不存在集合中的,找到它好像挺容易,但是写起代码来好像有点绕,那么,现在就把它写出来: 

package org.luzhen.test;

import java.util.ArrayList;
import java.util.List;

/**
 * @Author: luzhen
 * @Date: 2019-02-22 15:31
 * @Version 1.0
 */
public class P {

    public static void main(String[] args) {
        List<Integer> list1 = new ArrayList<>();
        list1.add(1);
        list1.add(2);
        list1.add(3);
        list1.add(4);
        list1.add(5);

        List<Integer> list2 = new ArrayList<>();
        list2.add(3);
        list2.add(4);
        list2.add(5);
        list2.add(3);//包含重复元素

        for(int i=0;i<list2.size();i++){
            for(int j=0;j<list1.size();j++){
                if(list2.get(i).equals(list1.get(j))){
                    list1.remove(list1.get(j));
                }
            }
        }

        for(int a=0;a<list1.size();a++){
            System.out.println(list1.get(a));
        }
    }
}


版权声明:本文为luzhensmart原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。