Une colle sur les tailles de tableau
Bonjour,
voila, je suis face un bug aléatoire et que je ne comprend pas. J'ai pu remonter le problème jusqu'à un calcul d'indice qui va déterminer la taille d'un tableau. "parfois" il y a un bug et la taille du tableau est trop petite de 1.
Donc la colle est la suivante : comment (dans quel cas) les deux méthodes suivante, placée au même endroit du code, peuvent-elles donner un résultat ayant un écart de 1 pour la variable int nbSchoolsTot :
METHODE 1
Code:
1 2 3
| nbSchoolsTot = 0;
for(int j=0;j<tabCohorts.length;j++)
nbSchoolsTot += tabCohorts[j].nbSchools; |
METHODE 2
Code:
1 2 3 4 5 6
|
//[TIM] JE NE COMPREND PAS POURQUOI, mais la methode cidessus pour calculer
// nbSchoolsTot ne donne pas toujours la meme chose que celle du dessous, ce qui provoque une erreur..
for(int jj=0;jj<tabCohorts.length;jj++)
for(int k=0;k<tabCohorts[jj].nbSchools;k++)
{nbSchoolsTot++;} |