一行代码快速取两个集合的交集,并集,差集

两个List集合取交集、并集、差集的一个简单案例,可供参考:

 首先准备两个集合

List s1=new ArrayList<>();
s1.add("张三");
s1.add("李四");
s1.add("王五");
s1.add("赵六");

List s2=new ArrayList<>();
s2.add("小红");
s2.add("小黄");
s2.add("小蓝");
s2.add("王五");

 我们借助 org.apache.commons.collections4 下的一个ListUtils工具类来实现

public static void main(String[] args) {
        List s1=new ArrayList<>();
        s1.add("张三");
        s1.add("李四");
        s1.add("王五");
        s1.add("赵六");

        List s2=new ArrayList<>();
        s2.add("小红");
        s2.add("小黄");
        s2.add("小蓝");
        s2.add("王五");

        List intersection = ListUtils.intersection(s1, s2);
        System.out.println("两个集合的交集为:" + intersection);

        List subtract = ListUtils.subtract(s1, s2);
        System.out.println("两个集合的差集为:" + subtract);

        List union = ListUtils.union(s1, s2);
        System.out.println("两个集合不去重的并集为:" + union);

        List sum = ListUtils.sum(s1, s2);
        System.out.println("两个集合去重的并集为:" + sum);
}

 输出的结果为:

两个集合的交集为:[王五]
两个集合的差集为:[张三, 李四, 赵六]
两个集合不去重的并集为:[张三, 李四, 王五, 赵六, 小红, 小黄, 小蓝, 王五]
两个集合去重的并集为:[张三, 李四, 赵六, 小红, 小黄, 小蓝, 王五]

你可能感兴趣的:(Java,java,servlet,html)