Résolution de l'erreur lors de la création d'un tableau de LinkedLists
En Java, il n'est pas possible de créer directement un tableau générique de LinkedLists. Cela est dû à une limitation du langage Java connue sous le nom d'« effacement générique ». Lors de la compilation du code Java, le compilateur efface les informations de type pour les types génériques comme LinkedList. Par conséquent, la machine virtuelle Java (JVM) ne voit que les types bruts comme LinkedList lors de l'exécution du code.
Résoudre le problème
Pour résoudre ce problème, vous pouvez convertissez le type et faites la déclaration comme ceci :
<code class="java">myMatrix = (LinkedList<IntegerNode>[]) new LinkedList<?>[numRows];</code>
En convertissant le tableau en un type spécifique, vous indiquez explicitement au compilateur que vous souhaitez qu'il s'agisse d'un tableau de LinkedLists contenant des objets IntegerNode. Le caractère générique (?) dans la déclaration indique que le type spécifique des éléments dans le tableau LinkedList n'est pas pertinent, tant qu'il s'agit d'objets de n'importe quel type.
Explication de la compatibilité de la déclaration
La déclaration de LinkedList
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!