Sortie de tableau
Fermé
helloword95
-
22 mai 2017 à 15:05
KX Messages postés 16754 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 23 mai 2017 à 13:45
KX Messages postés 16754 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 23 mai 2017 à 13:45
A voir également:
- Sortie de tableau
- Tableau croisé dynamique - Guide
- Tableau ascii - Guide
- Tableau word - Guide
- Trier tableau excel - Guide
- Tableau de raccourcis clavier - Guide
1 réponse
KX
Messages postés
16754
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 020
22 mai 2017 à 17:55
22 mai 2017 à 17:55
Bonjour,
Sur quelle ligne de code as tu l'exception et avec quelle valeur associée ?
Je pense à une incohérence entre nombreDeCelebrites et listeDeCelebrites.length
Sur quelle ligne de code as tu l'exception et avec quelle valeur associée ?
Je pense à une incohérence entre nombreDeCelebrites et listeDeCelebrites.length
22 mai 2017 à 18:17
Je pense plutôt que le problème se situe à car .
22 mai 2017 à 23:44
23 mai 2017 à 07:15
Tu fais int nombreCommun = 0; puis Celebrite[] tableDePrenomCommun = new Celebrite[nombreCommun]; donc tableDePrenomCommun a une taille de 0.
En faisant nombreCommun++ tu augmentes la taille de nombreCommun, mais ça n'augmente pas rétroactivement la taille de tableDePrenomCommun qui est toujours de 0.
Donc tableDePrenomCommun[i] = celebrite; plante pour i=0 car il n'y a pas de case tableDePrenomCommun[0]
Il faudrait peut-être que tu utilises plutôt des listes que des tableaux si ta taille de données est dynamique.
23 mai 2017 à 09:49
23 mai 2017 à 13:45
D'ailleurs tes attributs s'appellent "liste" ce qui est tout à fait cohérent...
Notons par ailleurs que depuis Java 8 on peut éviter de faire soit même ce genre de code avec boucle for, if imbriqué, ajout dans des listes etc.
À la place on utilise des streams et les méthodes utilitaires associées.
Exemple :
Mon code de test :
Cela n'affiche que les noms N3, N4 et N5 car P2 est le prénom le plus représenté.