Apache Commons 集合 - 交叉点


Apache Commons Collections 库的 CollectionUtils 类为涵盖广泛用例的常见操作提供了各种实用方法。它有助于避免编写样板代码。该库在 jdk 8 之前非常有用,因为 Java 8 的 Stream API 现在提供了类似的功能。

检查交叉口

CollectionUtils的intersection()方法可用于获取两个集合之间的公共对象(交集)。

宣言

以下是org.apache.commons.collections4.CollectionUtils.intersection()方法的声明-

public static <O> Collection<O> intersection(Iterable<? extends O> a, Iterable<? extends O> b)

参数

  • a - 第一个(子)集合不能为空。

  • b - 第二个(超级)集合不能为空。

返回值

两个集合的交集。

例子

以下示例显示了org.apache.commons.collections4.CollectionUtils.intersection()方法的用法。我们将得到两个列表的交集。

import java.util.Arrays;
import java.util.List;
import org.apache.commons.collections4.CollectionUtils;

public class CollectionUtilsTester {
   public static void main(String[] args) {
      //checking inclusion
      List<String> list1 = Arrays.asList("A","A","A","C","B","B");
      List<String> list2 = Arrays.asList("A","A","B","B");
      System.out.println("List 1: " + list1);
      System.out.println("List 2: " + list2);
      System.out.println("Commons Objects of List 1 and List 2: " + CollectionUtils.intersection(list1, list2));
   }
}

输出

当您运行代码时,您将看到以下输出 -

List 1: [A, A, A, C, B, B]
List 2: [A, A, B, B]
Commons Objects of List 1 and List 2: [A, A, B, B]