Coleções Apache Commons - Subtração

A classe CollectionUtils da biblioteca de coleções do Apache Commons fornece vários métodos utilitários para operações comuns que abrangem uma ampla variedade de casos de uso. Isso ajuda a evitar escrever código clichê. Essa biblioteca é muito útil antes do jdk 8, pois funcionalidades semelhantes agora são fornecidas na API de fluxo do Java 8.

Verificando a Substração

O método subtract () de CollectionUtils pode ser usado para obter a nova coleção subtraindo objetos de uma coleção de outra.

Declaração

A seguir está a declaração para org.apache.commons.collections4.CollectionUtils.subtract() método -

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

Parâmetros

  • a - A coleção da qual subtrair não deve ser nula.

  • b - A coleção a ser subtraída não deve ser nula.

Valor de retorno

Uma nova coleção com os resultados.

Exemplo

O exemplo a seguir mostra o uso de org.apache.commons.collections4.CollectionUtils.subtract()método. Obteremos a subtração de duas listas.

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

Resultado

Ao executar o código acima, você verá a seguinte saída -

List 1: [A, A, A, C, B, B]
List 2: [A, A, B, B]
List 1 - List 2: [A, C]