Collezioni Commons - Trasformazione di oggetti
La classe CollectionUtils della libreria Apache Commons Collections fornisce vari metodi di utilità per operazioni comuni che coprono un'ampia gamma di casi d'uso. Aiuta a evitare di scrivere codice boilerplate. Questa libreria è molto utile prima di jdk 8 poiché funzionalità simili sono ora fornite nell'API Stream di Java 8.
Trasformare una lista
Il metodo collect () di CollectionUtils può essere utilizzato per trasformare un elenco di un tipo di oggetti in un elenco di diversi tipi di oggetti.
Dichiarazione
Di seguito è riportata la dichiarazione per
org.apache.commons.collections4.CollectionUtils.collect() metodo -
public static <I,O> Collection<O> collect(Iterable<I> inputCollection,
Transformer<? super I,? extends O> transformer)
Parametri
inputCollection - La raccolta da cui ottenere l'input potrebbe non essere nulla.
Transformer - Il trasformatore da utilizzare, può essere nullo.
Valore di ritorno
Il risultato trasformato (nuovo elenco).
Eccezione
NullPointerException - Se la raccolta di input è nulla.
Esempio
L'esempio seguente mostra l'utilizzo di org.apache.commons.collections4.CollectionUtils.collect()metodo. Trasformeremo un elenco di stringhe in un elenco di interi analizzando il valore intero da String.
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);
}
}
Produzione
Quando usi il codice, otterrai il seguente codice:
[1, 2, 3]