Apache Commons Collections - Inclusion



Checking sublist

isSubCollection() method of CollectionUtils can be used to check if a collection contains the given collection or not.

Usage

// check if list2 is contained in list1
boolean result = CollectionUtils.isSubCollection(list2, list1);

Declaration

Following is the declaration for

org.apache.commons.collections4.CollectionUtils.isSubCollection() method −

public static boolean isSubCollection(Collection<?> a, Collection<?> b)

Parameters

  • a − The first (sub) collection, must not be null.

  • b − The second (super) collection, must not be null.

Return Value

True if and only if a is a sub-collection of b.

Example - Checking if List contains a sublist

The following example shows the usage of isSubCollection() method. We'll check a list is part of another list or not.

CommonCollectionsTester.java

package com.tutorialspoint;

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

public class CommonCollectionsTester {
   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("Is List 2 contained in List 1: " + CollectionUtils.isSubCollection(list2, list1));
   }
}

Output

You will receive the following output −

List 1: [A, A, A, C, B, B]
List 2: [A, A, B, B]
Is List 2 contained in List 1: true

Example - Checking if List is not containing a sublist

The following example shows the usage of org.apache.commons.collections4.CollectionUtils.isSubCollection() method. We'll check a list is part of another list or not.

CommonCollectionsTester.java

package com.tutorialspoint;

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

public class CommonCollectionsTester {
   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","B");
      System.out.println("List 1: " + list1);
      System.out.println("List 2: " + list2);
      System.out.println("Is List 2 contained in List 1: " + CollectionUtils.isSubCollection(list2, list1));
   }
}

Output

You will receive the following output −

List 1: [A, A, A, C, B, B]
List 2: [A, A, B, B, B]
Is List 2 contained in List 1: false
Advertisements