Exception in thread "main" java.lang.ArrayIndexOutOfBoundsExcept
Résolu/Fermé
khaledtotti
-
21 avril 2013 à 13:27
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 21 avril 2013 à 18:38
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 21 avril 2013 à 18:38
A voir également:
- Exception in thread "main" java.lang.ArrayIndexOutOfBoundsExcept
- Bagage à main - Guide
- La main de la titi popo ✓ - Forum Musique / Radio / Clip
- Navigation in private - Guide
- A java exception has occurred ✓ - Forum Minecraft
- Deco in paris avis ✓ - Forum Consommation & Internet
2 réponses
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 020
21 avril 2013 à 13:46
21 avril 2013 à 13:46
1) N'appelle pas ta classe "main", d'une part parce que normalement les noms de classe commencent par une majuscule (la remarque est donc valable pour tes autres classes), mais surtout parce ta méthode "main" aurait le même nom qu'un constructeur de la classe "main" ce qui n'est pas correct.
2) Tes import java.util.* sont tous inutiles puisque tu ne te sers jamais d'aucune classe de ce package...
3) Enfin, pour en revenir à ton ArrayIndexOutOfBoundsException, tu essayes de faire "tab[indice]=l" dans la méthode ajout de ta bibliothèque, mais ton tableau est de taille 0, car tu as fait sa déclaration comme ceci :
Il faudrait donc corriger la manière dont tu alloues la taille de ton tableau, parce que si tu modifies n après, ça ne modifieras pas automatiquement la taille de ton tableau !
Par exemple :
2) Tes import java.util.* sont tous inutiles puisque tu ne te sers jamais d'aucune classe de ce package...
3) Enfin, pour en revenir à ton ArrayIndexOutOfBoundsException, tu essayes de faire "tab[indice]=l" dans la méthode ajout de ta bibliothèque, mais ton tableau est de taille 0, car tu as fait sa déclaration comme ceci :
private int n; // 0 par défaut private livre[] tab=new livre[n]; // le tableau est de taille 0
Il faudrait donc corriger la manière dont tu alloues la taille de ton tableau, parce que si tu modifies n après, ça ne modifieras pas automatiquement la taille de ton tableau !
Par exemple :
public bibliotheque(int x) { n = x; tab = new livre[x]; indice = 0; }
khaledtotti
Messages postés
2
Date d'inscription
vendredi 16 octobre 2009
Statut
Membre
Dernière intervention
21 avril 2013
21 avril 2013 à 14:38
21 avril 2013 à 14:38
merciiiii beaucoup !!!!
khaledtotti
Messages postés
2
Date d'inscription
vendredi 16 octobre 2009
Statut
Membre
Dernière intervention
21 avril 2013
21 avril 2013 à 14:40
21 avril 2013 à 14:40
mais j'ai fais le import car j'ai besoin des classes string !!!
je peux en débarrasser ???
je peux en débarrasser ???
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 020
Modifié par KX le 21/04/2013 à 18:40
Modifié par KX le 21/04/2013 à 18:40
La classe String est dans java.lang !
Et avant que tu ne poses la question, ce n'est pas la peine d'importer java.lang.* ce package est automatiquement ajouté pour toutes les classes.
Et avant que tu ne poses la question, ce n'est pas la peine d'importer java.lang.* ce package est automatiquement ajouté pour toutes les classes.