Apache Commons Collections - 交集

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


检查交集

CollectionUtils 的intersection() 方法可用于获取两个集合(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]