10
votes

Magasin Int dans ArrayList et remonter à la variable primitive Int - Java

Je reçois une erreur et je ne peux pas savoir comment résoudre le problème.

i Ajouter un Int à une arraylist. P>

found   : java.lang.Object
required: int
grid[ y ][ x ] = (int)list.get(0);
                              ^


1 commentaires

À quoi ressemble la déclaration de grille?


5 Réponses :


12
votes

Utilisez un paramètre de type plutôt que le tableau brut : xxx

L'erreur que vous obtenez est parce que vous ne pouvez pas lancer d'objet à Int , AutoBoxing se décompose là-bas. Vous pouvez le jeter à entier et ensuite le faire automatiquement sur int , mais à l'aide du paramètre type est une solution bien meilleure.


0 commentaires

8
votes

Utiliser ArrayList . Lorsque vous faites list.get.get () Vous obtiendrez un integer que vous pouvez appeler intvalue () sur pour obtenir un int < / code>


0 commentaires

4
votes

(ineeger) list.get (0) fera le tour. Auto-Unboxing le convertira ensuite en un int automatiquement


0 commentaires

1
votes

La principale différence entre la liste des array et les tableaux est, la liste des tableau ne peut stocker que des objets dans celui-ci, mais pas les types de données primitifs (dans votre cas entier). Donc, pour résoudre ce problème, nous utilisons ArrayList Liste = Nouvelle ArrayList (); Merci.


0 commentaires

0
votes

Vous pouvez faire une arrayliste comme: xxx

et ensuite faire la même chose, ce problème se produit car le tableau ne peut stocker que des éléments sous forme d'objets car il fait partie du cadre de collections. En Java et en informatique, tout est stocké sous forme d'objets. Donc, il convertit la prime-in int vers son entier de classe wrapper qui provoque le problème.


0 commentaires