Bonjour à tous,
je travaille sur un projet en Java et je coince vraiment sur une conversion qui ne se fait pas. J'ai une runtime error : java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.String;
Jusque là pas de soucis, les erreurs ça arrive !
Le problème c'est que j'ai un code qui marche mais ne fait pas ce que je veux et un code qui marche devrait faire ce dont j'ai besoin mais qui plante ...
Code qui marche :
DefaultGridModel est une classe d'une library imposée dont le constructeur est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 //création @SuppressWarnings("unchecked") List<MonTypeEnum>[][] init = (List<MonTypeEnum>[][]) new List<?>[lines][rows]; //initialisation // je ne vous l'affiche pas parce qu'on s'en moque final DefaultGridModel<MonTypeEnum> model = new DefaultGridModel<MonTypeEnum>(init);
DefaultGridModel(Collection<? extends E>[][] init)
Construct of GridModel, given its dimension and the initial content of each cells
Ce code fonctionne donc très bien. Malheureusement il utilise un type Enum ce qui ne me convient finalement pas car je veux pouvoir ajouter des valueurs au cours du jeu (pas possible avec un enum).
J'ai donc fait ce code là,
Code qui ne marche pas :
Ce qui est exactement la même chose, je change juste le type. Mais là rien ne vas plus :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 //création @SuppressWarnings("unchecked") List<MonType>[][] init = (List<MonType>[][]) new List<?>[lines][rows]; //initialisation // ... final DefaultGridModel<MonType> model = new DefaultGridModel<MonType>(init);
java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [LMonType;
A la ligne :
@SuppressWarnings("unchecked") List<MonType>[][] init = (List<MonType>[][]) new List<?>[lines][rows];
Est-ce que quelqu'un pourrait m'aider ?
Il me faut une matrice de MonType que je puisse passer en argument au constructeur de
DefaultGridModel donc de type Collection<? extends E>[][]
Merci d'avance pour votre aide !
Whims
Partager