Kolekcje wspólne - przekształcanie obiektów

Klasa CollectionUtils z biblioteki Apache Commons Collections udostępnia różne metody narzędziowe do typowych operacji obejmujących szeroki zakres przypadków użycia. Pomaga to uniknąć pisania kodu standardowego. Ta biblioteka jest bardzo przydatna przed jdk 8, ponieważ podobne funkcje są teraz dostępne w Stream API Java 8.

Przekształcanie listy

collect () metody CollectionUtils może służyć do przekształcania listy obiektów jednego typu w listę obiektów innego typu.

Deklaracja

Poniżej znajduje się deklaracja dla

org.apache.commons.collections4.CollectionUtils.collect() metoda -

public static <I,O> Collection<O> collect(Iterable<I> inputCollection,
   Transformer<? super I,? extends O> transformer)

Parametry

  • inputCollection - Kolekcja, z której mają zostać pobrane dane wejściowe, nie może mieć wartości NULL.

  • Transformer - Używany transformator może być zerowy.

Wartość zwracana

Przekształcony wynik (nowa lista).

Wyjątek

  • NullPointerException - Jeśli kolekcja danych wejściowych ma wartość null.

Przykład

Poniższy przykład pokazuje użycie org.apache.commons.collections4.CollectionUtils.collect()metoda. Przekształcimy listę ciągów w listę liczb całkowitych, analizując wartość całkowitą z ciągu.

import java.util.Arrays;
import java.util.List;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.Transformer;
public class CollectionUtilsTester {
   public static void main(String[] args) {
      List<String> stringList = Arrays.asList("1","2","3");
      List<Integer> integerList = (List<Integer>) CollectionUtils.collect(
         stringList, new Transformer<String, Integer>() {
         @Override
         public Integer transform(String input) {
            return Integer.parseInt(input);
         }
      });
      System.out.println(integerList);
   }
}

Wynik

Kiedy użyjesz kodu, otrzymasz następujący kod -

[1, 2, 3]