En Java, il est possible de convertir un ArrayList contenant des objets Integer en un tableau int[] primitif. Cependant, tenter de convertir directement l'ArrayList en un int[], comme indiqué ci-dessous, entraînera une erreur de compilation :
List<Integer> x = new ArrayList<Integer>(); int[] n = (int[])x.toArray(int[x.size()]);
Pour réussir à convertir l'ArrayList en un tableau primitif, il existe plusieurs façons pour l'approcher :
Une méthode consiste à invoquer la méthode toArray du ArrayList avec un tableau du type primitif souhaité comme argument. Par exemple :
List<Integer> x = new ArrayList<Integer>(); int[] n = new int[x.size()]; x.toArray(n);
Cette approche consiste à créer un nouveau tableau primitif de la taille appropriée et à le transmettre à toArray pour remplir le tableau avec les valeurs entières.
Si vous utilisez Java 8 ou version ultérieure, il est possible de convertir ArrayList en un tableau primitif en utilisant la méthode stream() avec mapToInt :
List<Integer> x = new ArrayList<Integer>(); int[] n = x.stream().mapToInt(Integer::intValue).toArray();
Cette approche utilise des flux pour parcourir ArrayList, mapper chaque objet Integer à sa valeur int primitive et collecter les résultats dans un tableau à l'aide de toArray.
Lors de la conversion d'une ArrayList contenant des objets Integer en un tableau primitif, il est important de considérer :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!