Avatar ·

Comment créer un tableau générique (generic array) en Java ? Solution du problème

Bonjour à tous ! J'ai récemment commencé à apprendre Java et j'ai rencontré un problème avec les génériques. Je dois créer un tableau d'éléments de type générique, mais le compilateur génère une erreur. Voici mon code : ```java public class MyContainer { private T[] array; public MyContainer(int size) { array = new T[size]; // Erreur de compilation : "Type parameter 'T' cannot be instantiated directly" } } ``` Je comprends que Java ne permet pas de créer directement des tableaux de types génériques à cause de l'effacement de type (type erasure). Mais comment implémenter correctement une telle structure ? J'ai besoin de stocker des éléments dans un tableau et de pouvoir y accéder par index. J'ai essayé d'utiliser `new Object[size]` avec un cast, mais cela génère un avertissement "unchecked cast". Dites-moi comment créer correctement un tableau générique en Java pour que le code soit type-safe et ne génère pas d'avertissements. Existe-t-il des approches alternatives ? J'ai entendu parler de `Array.newInstance()`, mais je ne comprends pas.