Spécifier Explicitement le Type d’Un ArrayList Instancié
C’est la manière la plus explicite et directe de procéder. En utilisant les génériques Java, vous déclarez simplement le type d’éléments que vous souhaitez stocker dans votre ArrayList
au moment de le créer.
Utiliser L’Inférence de Type
Si vous utilisez Java 10 ou une version ultérieure, vous pouvez tirer parti de l’inférence de type pour spécifier indirectement le type de votre ArrayList
. En écrivant simplement ArrayList éléments = new ArrayList("texte")
, le compilateur déduira du type de l’argument du constructeur le type de votre ArrayList
.
Utiliser l’Annotation @SuppressWarnings
Si vous travaillez avec des codes plus anciens qui ne prennent pas en charge les génériques Java, vous pouvez utiliser l’annotation @SuppressWarnings
pour supprimer l’avertissement du compilateur concernant le type d’éléments inconnu de votre ArrayList
. Cependant, cela rend votre code moins clair.
Utiliser un Cast
Si, pour une raison quelconque, vous devez convertir un ArrayList
brut, c’est-à -dire sans type spécifié, en un ArrayList
typé, vous pouvez le faire en utilisant un cast. Cependant, cette pratique est généralement déconseillée car elle peut entraîner des erreurs d’exécution.
Instancier un ArrayList
de chaînes de caractères en utilisant les génériques Java
ArrayList noms = new ArrayList<>(); noms.add("Jean"); noms.add("Marie"); noms.add("Paul");
Instancier un ArrayList
de chaînes de caractères en utilisant l’inférence de type
ArrayList noms = new ArrayList("texte"); noms.add("Jean"); noms.add("Marie"); noms.add("Paul");
Supprimer l’avertissement du compilateur concernant le type d’éléments inconnu d’un ArrayList
@SuppressWarnings("unchecked") ArrayList noms = new ArrayList(); noms.add("Jean"); noms.add("Marie"); noms.add("Paul");
Convertir un ArrayList
brut en un ArrayList
typé à l’aide d’un cast
ArrayList noms = new ArrayList(); noms.add("Jean"); noms.add("Marie"); noms.add("Paul"); @SuppressWarnings("unchecked") ArrayList nomsTypés = (ArrayList) noms;
Expert Opinions:
“Les génériques Java sont un excellent moyen d’améliorer la sécurité de votre code et de le rendre plus explicite. Utilisez-les chaque fois que possible.” – Joshua Bloch, auteur du livre “Effective Java”.
“L’inférence de type est un outil puissant qui peut rendre votre code plus concis et plus facile à lire. Tirez-en parti lorsque cela est possible.” – Brian Goetz, auteur du livre “Java Concurrency in Practice”.
En résumé, définir le type d’un ArrayList
à partir d’un string est crucial pour garantir la sécurité de votre code et le rendre plus explicite. Utilisez les génériques Java ou l’inférence de type pour spécifier directement ou indirectement le type de votre ArrayList
.