Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2093 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  erreur: ArrayIndexOutOfBoundsException

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

erreur: ArrayIndexOutOfBoundsException

n°1011371
tom261285
L'alcool c bon, buvez en :)
Posté le 13-03-2005 à 18:22:32  profilanswer
 

netbeans compile bien le Main.java et le reste mais au moment de lancer le projet il me dit qu'il y a une erreur
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 1
 
j'ai beau retourné le code dans tous les sens je vois pas
http://tom261285.free.fr
 
j'ai mis mes sources dessus si quelqu'un pouvait regarder ca serait sympa  
 :??:
 
plateauB et rangeeB étant la meme chose que plateau et rangee mais contenant des booléens
 
ps: je débute en java


Message édité par tom261285 le 13-03-2005 à 18:23:30
mood
Publicité
Posté le 13-03-2005 à 18:22:32  profilanswer
 

n°1011380
elianor
bannie 17 fois
Posté le 13-03-2005 à 18:33:47  profilanswer
 

Code :
  1. F:\temp>java morpion.Main
  2. Entrez la ligne puis la colonne
  3. Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Array index
  4. out of range: 1
  5.         at java.util.Vector.get(Unknown Source)
  6.         at morpion.Rangee.get(Rangee.java:33)
  7.         at morpion.Plateau.access(Plateau.java:58)
  8.         at morpion.Main.verification(Main.java:64)
  9.         at morpion.Main.main(Main.java:159)
  10. F:\temp>


 
La pile est un peu plus longue que ça :o
 
C'est donc dans Rangee.java, ligne 33 que tu fais un accès invalide :o


---------------
JE JE SUIS LIBERTINEEEEEEEEEEE JE SUIS UNE CATINNNNNNNNN §§§§§§§§
n°1011411
tom261285
L'alcool c bon, buvez en :)
Posté le 13-03-2005 à 18:47:00  profilanswer
 

elianor a écrit :

Code :
  1. F:\temp>java morpion.Main
  2. Entrez la ligne puis la colonne
  3. Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Array index
  4. out of range: 1
  5.         at java.util.Vector.get(Unknown Source)
  6.         at morpion.Rangee.get(Rangee.java:33)
  7.         at morpion.Plateau.access(Plateau.java:58)
  8.         at morpion.Main.verification(Main.java:64)
  9.         at morpion.Main.main(Main.java:159)
  10. F:\temp>


 
La pile est un peu plus longue que ça :o
 
C'est donc dans Rangee.java, ligne 33 que tu fais un accès invalide :o


 
bah je vois pas pourquoi  :??:  
rien de mauvais dans mon code  :heink:  
si ????  :(

n°1011413
elianor
bannie 17 fois
Posté le 13-03-2005 à 18:48:17  profilanswer
 

Utilise un debuggeur :o


---------------
JE JE SUIS LIBERTINEEEEEEEEEEE JE SUIS UNE CATINNNNNNNNN §§§§§§§§
n°1011414
chrisbk
-
Posté le 13-03-2005 à 18:49:13  profilanswer
 

out of range : 1
faudrait ptet voir a ajouter des elements dans ton vecteur [:petrus75]

n°1012052
the real m​oins moins
Posté le 14-03-2005 à 14:17:23  profilanswer
 

tom261285 a écrit :


rien de mauvais dans mon code  :heink:  


ha ben dans ce cas, désolé. surement un bug de la jvm [:bien]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°1015045
nefertiti2
belle égyptienne 2
Posté le 16-03-2005 à 19:23:26  profilanswer
 

n'est-ce pas parce que le type de la variable déclarée est dépassé en taille ?

n°1016498
tom261285
L'alcool c bon, buvez en :)
Posté le 17-03-2005 à 20:08:58  profilanswer
 

nefertiti2 a écrit :

n'est-ce pas parce que le type de la variable déclarée est dépassé en taille ?


bah normalement ca veut dire ca :( mais je vois pas pourquoi il me le met car je fais rien dedans lors de la 1ere execution

n°1016859
elianor
bannie 17 fois
Posté le 18-03-2005 à 08:03:05  profilanswer
 

elianor a écrit :

Utilise un debuggeur :o


 
[:j l b]


---------------
JE JE SUIS LIBERTINEEEEEEEEEEE JE SUIS UNE CATINNNNNNNNN §§§§§§§§
n°1016863
nefertiti2
belle égyptienne 2
Posté le 18-03-2005 à 08:41:04  profilanswer
 

Sorry, je me suis trompée(je débute aussi),c'est quand tu remplis un tableau et que tu dépasses sa capacité, ex tu déclares un tableau à 10 éléments, tu fais pas gaffe que le premier est à l'indice 0 et tu crois pouvoir aller jusqu'à l'indice 10, indice 10 tu es déjà hors du tableau.

mood
Publicité
Posté le 18-03-2005 à 08:41:04  profilanswer
 

n°1017720
tom261285
L'alcool c bon, buvez en :)
Posté le 18-03-2005 à 16:22:03  profilanswer
 

ca y est je crois que j'ai compris
je suis pas sur mais on dirait que l'erreur vient du fait que je veuille mettre qqchose dans la case [2] du vector alors que la [1] est vide par exemple
en c++ on peut... on peut pas en java ???

n°1017726
the real m​oins moins
Posté le 18-03-2005 à 16:24:01  profilanswer
 

si.


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°1017735
tom261285
L'alcool c bon, buvez en :)
Posté le 18-03-2005 à 16:29:38  profilanswer
 


ta reponse m'est d'une grande aide ;)
 
j'ai mal declarer mon vector pr que ca merde ou c'est moi qui analyse mal mon probleme et qui me plante completement...  :??:

n°1017764
the real m​oins moins
Posté le 18-03-2005 à 16:46:54  profilanswer
 

les deux, je dirais [:dawa]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°1017877
chrisbk
-
Posté le 18-03-2005 à 18:42:41  profilanswer
 

jpense (sans lire le code) que t'as pas compris que pour acceder a un element n du vecteur faut deja avoir ajouté n+1 element dans ledit vecteur (genre ajouter 2 elements pour acceder a l'element 1 quoi)


---------------
NP: HTTP Error 764 Stupid coder found
n°1017894
Michelpopo​pleye
Oyoyoyoye !
Posté le 18-03-2005 à 19:08:53  profilanswer
 

:heink:  
Je comprend pas pourquoi tu utilises Vector<Rangee> plutot qu'un tableau à 2 dimensions pour construire ton plateau...
 
Tu peux m'expliquer ce que tu comptes faire plus tard avec ta classe Rangee ?
Je pense que tu as tout simplement cherché trop compliqué pour construire ton plateau... Tu risques d'avoir du mal à debugger ton programme après (la preuve en est...).
 
Sinon, apparremment ton problème vient du fait que tu ne démarres pas à 0 l'initialisation de ton vecteur ou que tu ne l'initialise pas du tout...  
 
Ex :
for (int i=0(et pas 1); i <taille_de_ta_rangee;i++) {
    initialisation_de_ta_rangee();
}


Message édité par Michelpopopleye le 18-03-2005 à 19:17:32
n°1017959
tom261285
L'alcool c bon, buvez en :)
Posté le 18-03-2005 à 20:40:43  profilanswer
 

je sais pas faire un tableau a 2 dimensions  :(  
je crois que je ne l'initialise pas du tout mais je vois pas pourquoi... car toute mes boucles for sont for(int i=0...
je vois pas ou tu as vu un i=1

n°1019718
vk_phoenix​fr
Posté le 21-03-2005 à 14:02:22  profilanswer
 

Tableau à deux dimension :
int[][] a;
Le premier indice est celui de la ligne, le deuxième la colonne.
 
Un vecteur, tu ne peux qu'ajouter des éléments, c'est une sorte de pile.
Après, tu peux insérer des éléments entre ceux déjà existant, mais pas en ajouter un à l'indice 15 si tu n'as que 9 élément( ou 14, ou même 15) dans ton vecteur.

n°1019780
FlorentG
Posté le 21-03-2005 à 14:55:15  profilanswer
 

Et si tu postait un peu de code histoire de voir [:itm]

n°1020029
Michelpopo​pleye
Oyoyoyoye !
Posté le 21-03-2005 à 18:50:17  profilanswer
 

vk_phoenixfr a écrit :


Un vecteur, tu ne peux qu'ajouter des éléments, c'est une sorte de pile.
Après, tu peux insérer des éléments entre ceux déjà existant, mais pas en ajouter un à l'indice 15 si tu n'as que 9 élément( ou 14, ou même 15) dans ton vecteur.


 
 :jap:  
 
Le tableau me semble plus simple à implanter...
Mais sinon, tu es donc obligé d'initialiser tous les éléments de ton vecteur...
(Je n'utilises jamais la classe Vector dans Java... dans quel cas de figure est-elle utile ?  :??: )

n°1020034
elianor
bannie 17 fois
Posté le 21-03-2005 à 18:53:17  profilanswer
 

Michelpopopleye a écrit :


(Je n'utilises jamais la classe Vector dans Java... dans quel cas de figure est-elle utile ?  :??: )


 
aucun, elle est limite considérée comme deprecated ...


---------------
JE JE SUIS LIBERTINEEEEEEEEEEE JE SUIS UNE CATINNNNNNNNN §§§§§§§§
n°1020041
Michelpopo​pleye
Oyoyoyoye !
Posté le 21-03-2005 à 18:54:08  profilanswer
 

elianor a écrit :

aucun, elle est limite considérée comme deprecated ...


 
Oki...  :bounce:

n°1022095
tom261285
L'alcool c bon, buvez en :)
Posté le 23-03-2005 à 13:39:33  profilanswer
 

voila je suis passé à un tableau a 2 dimensions comme conseillé précédement:
je pense que le code qui merde se situe ici

Code :
  1. public void tourJoueur(Joueur j)
  2.     {
  3.         try
  4.         {
  5.             int l=1, c=1;
  6.             Boolean b=false;
  7.             System.out.println("Entrez la ligne puis la colonne" );
  8.             BufferedReader entreeClavier= new BufferedReader(new InputStreamReader(System.in));
  9.             while(!b)
  10.             {
  11.                 l=entreeClavier.read();
  12.                 c=entreeClavier.read();
  13.                 if(plateau.isEmpty(l,c))
  14.                 {
  15.                     b=true;
  16.                 }
  17.             }
  18.             if(b)
  19.             {
  20.                 plateau.addElement(l, c, j);
  21.             }
  22.         }
  23.         catch(IOException e)
  24.         {
  25.             System.err.println(e.getMessage());
  26.         }
  27.     }


le tableau est initialisé ainsi:

Code :
  1. public Plateau(int j)
  2.     {
  3.         plateau = new Joueur[j][j];
  4.         libre=j*j;
  5.     }


mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  erreur: ArrayIndexOutOfBoundsException

 

Sujets relatifs
[Delphi] idhttp : erreur ...Encore une erreur 500
Problème de LoadLibrary (erreur 2)[ASP] Header "attached file" et erreur javascript...
[PHP/MYQL] Erreur de requeteErreur bash
ERREUR lancement programme depuis IDLE[MySQL 4.0.15] SELECT imbriqués : erreur
[DOM/XML/PHP] & dans texte = erreur de parsingErreur odbc -> access
Plus de sujets relatifs à : erreur: ArrayIndexOutOfBoundsException


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR