java如何使用代码求两个list集合的差集呢?
下文笔者讲述求list集合的差集的方法简介说明,如下所示:
差集: 用一个集合减去一个集合得到的集合,我们称之为“差集”
实现思路: 使用stream流中的filter方法对集合 进行"不包含关系计算",从而得到差集(jdk8循环的新特性)例:
package com.java265.other; import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; public class Test16 { /** * java265.com 示例程序 * * @throws IllegalAccessException * @throws InstantiationException */ public static void main(String[] args) throws InstantiationException, IllegalAccessException { List<String> list1 = new ArrayList<String>(); list1.add("java265.com-1"); list1.add("java265.com-2"); list1.add("java265.com-3"); List<String> list2 = new ArrayList<String>(); list2.add("java265.com-8"); list2.add("java265.com-2"); list2.add("java265.com-9"); System.out.println("======================"); // list1 差集 list1 = list1.stream().filter(e -> { return !list2.contains(e); }).collect(Collectors.toList()); System.out.println(list1); } } -----运行以上代码,将输出以下信息------ ====================== [java265.com-1, java265.com-3]
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。