Conversion d'une liste en tableau en Java
De nombreux développeurs Java rencontrent le besoin de convertir une liste en tableau. Cette conversion est souvent nécessaire pour des tâches telles que la transmission des éléments de la liste aux API existantes ou la manipulation de données dans des structures de données spécifiques.
Méthode 1 : toArray(new Foo[0])
La méthode toArray() fournit un moyen efficace de convertir une liste en tableau. En spécifiant comme argument un tableau vide du type souhaité, Java crée automatiquement un tableau de la taille appropriée et y copie les éléments de la Liste.
Foo[] array = list.toArray(new Foo[0]);
Cette méthode est particulièrement utile lorsque le type du tableau est inconnu , car la méthode toArray() peut le déduire dynamiquement.
Méthode 2 : toArray(new Foo[list.size()])
Alternativement, les développeurs peuvent prédimensionner le tableau à la taille de la liste en utilisant la méthode toArray() avec un tableau pré-alloué comme argument. Cependant, cette méthode n'est pas recommandée en raison de problèmes de performances potentiels et de problèmes de concurrence.
Foo[] array = new Foo[list.size()]; list.toArray(array);
Mise à jour : Préférence pour toArray(new Foo[0])
Dans versions Java récentes, l'utilisation de toArray(new Foo[0]) est fortement recommandée plutôt que toArray(new Foo[list.size()]). En effet, la création de tableaux basée sur la réflexion de Java a été optimisée, rendant la version de tableau vide plus rapide et plus fiable. De plus, l'approche des tableaux pré-dimensionnés peut entraîner des problèmes de concurrence si la liste est modifiée lors de la conversion.
Conclusion
Pour convertir une liste en tableau en Java , les développeurs peuvent utiliser la méthode toArray(). L'approche toArray(new Foo[0]) est recommandée pour son efficacité et sa fiabilité, tandis que l'approche toArray(new Foo[list.size()]) doit être évitée sauf si cela est nécessaire pour des raisons de compatibilité ascendante.
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!