Collections communes - Transformer des objets
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.
Transformer une liste
La méthode collect () de CollectionUtils peut être utilisée pour transformer une liste d'un type d'objets en liste de différents types d'objets.
Déclaration
Voici la déclaration pour
org.apache.commons.collections4.CollectionUtils.collect() méthode -
public static <I,O> Collection<O> collect(Iterable<I> inputCollection,
Transformer<? super I,? extends O> transformer)
Paramètres
inputCollection - La collection à partir de laquelle obtenir l'entrée peut ne pas être nulle.
Transformer - Le transformateur à utiliser peut être nul.
Valeur de retour
Le résultat transformé (nouvelle liste).
Exception
NullPointerException - Si la collection d'entrée est nulle.
Exemple
L'exemple suivant montre l'utilisation de org.apache.commons.collections4.CollectionUtils.collect()méthode. Nous transformerons une liste de chaînes en liste d'entiers en analysant la valeur entière de 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);
}
}
Production
Lorsque vous utilisez le code, vous obtiendrez le code suivant -
[1, 2, 3]