Collections Apache Commons - Inclusion

La classe CollectionUtils de la bibliothèque Apache Commons Collections fournit diverses méthodes utilitaires pour les opérations courantes couvrant un large éventail de cas d'utilisation. Cela permet d'éviter d'écrire du code standard. Cette bibliothèque est très utile avant jdk 8 car des fonctionnalités similaires sont désormais fournies dans l'API Stream de Java 8.

Vérification de la sous-liste

La méthode isSubCollection () de CollectionUtils peut être utilisée pour vérifier si une collection contient la collection donnée ou non.

Déclaration

Voici la déclaration pour

org.apache.commons.collections4.CollectionUtils.isSubCollection() méthode -

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

Paramètres

  • a - La première (sous) collection ne doit pas être nulle.

  • b - La deuxième (super) collection ne doit pas être nulle.

Valeur de retour

Vrai si et seulement si a est une sous-collection de b.

Exemple

L'exemple suivant montre l'utilisation de org.apache.commons.collections4.CollectionUtils.isSubCollection()méthode. Nous allons vérifier qu'une liste fait partie d'une autre liste ou non.

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

Production

Vous recevrez la sortie suivante -

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