专栏名称: 程序员鱼皮
鹅厂全栈开发,持续分享编程技法和实用项目
目录
相关文章推荐
扬州广播电视台  ·  扬州大女主!你不会不认识吧 ·  16 小时前  
扬州广播电视台  ·  扬州大女主!你不会不认识吧 ·  16 小时前  
江苏新闻  ·  注意!江苏又要下雨了! ·  20 小时前  
51好读  ›  专栏  ›  程序员鱼皮

今日代码大赏 | 集合高阶操作

程序员鱼皮  · 公众号  ·  · 2024-03-15 13:00

正文

在开发的过程中,我们偶尔会遇到需要对集合进行高阶操作的场景。

如差集、并集、补集等,但 Java 本身并没有提供这些方法。

那我们要用的时候怎么办呢?

其实很多工具包都提供了现成的方法,

比如 apache commons-lang3 工具包,

示例代码如下:

import org.apache.commons.collections4.CollectionUtils;

/**
 * 有时候我们需要对已有的两个集合进行操作,比如取交集或者并集等。
 */

 @SpringBootTest
public class MainApplicationTest {

  @Test
  public void testCompare() {
      List list = new ArrayList<>();
      list.add(2);
      list.add(1);
      list.add(3);

      List list2 = new ArrayList<>();
      list2.add(2);
      list2.add(4);

      //获取并集
      Collection unionList = CollectionUtils.union(list, list2);
      System.out.println(unionList);

      //获取交集
      Collection intersectionList = CollectionUtils.intersection(list, list2);
      System.out.println(intersectionList);

      //获取交集的补集
      Collection disjunctionList = CollectionUtils.disjunction(list, list2);
      System.out.println(disjunctionList);

      //获取差集
      Collection subtractList = CollectionUtils.subtract(list, list2);
      System.out.println(subtractList);
  }
  
}

完整代码片段来源于代码小抄,欢迎点击进入小程序阅读!

在线访问:https://www.codecopy.cn/post/10zoqu

更多优质代码欢迎进入小程序查看!

往期推荐

今日代码大赏 | 饿汉式单例模式

今日代码大赏 | 快速排序

今日代码大赏 | 阶乘







请到「今天看啥」查看全文