Dans le manuel de Horstmann (Big Java Late Objects) sur java, pour une boucle telle que:
for (i = 0; i <= 5; i++)
Horstmann dit que les valeurs de i
cette boucle for est 0 1 2 3 4 5
.
Cependant, il me semble que la valeur i
devrait se terminer à 6 puisque la boucle est entrée lorsque la i
a la valeur 5. Qu'est - ce que je ne comprends sur ce boucles quelqu'un pourrait me expliquer?
(PS. Je suis désolé si la question est trop basique et donc pas permis dans cette plate-forme.)
modifier au sujet de la suggestion en double: Ma question n'est pas un double du lien suggéré parce que le lien suggéré est de l'exécution de la boucle, la mienne est de la mise à jour de la i variable, après la fin de l'exécution. Je comprends que si j'ajouterais une déclaration System.out.print (i) la sortie sera 0 1 2 3 4 5 parce que je l'est mis à jour après la déclaration d'exécution (dans ce cas, la déclaration d'impression)
Vous avez raison que la valeur i
sera 6 après la boucle est terminée, mais peut - être Horstmann voulu dire les valeurs de l' i
intérieur de la boucle?
int i;
for (i = 0; i <= 5; i++) {
System.out.println("Value of i IN loop: " + i);
}
System.out.println("Value of i AFTER loop: " + i);
Production:
Value of i IN loop: 0
Value of i IN loop: 1
Value of i IN loop: 2
Value of i IN loop: 3
Value of i IN loop: 4
Value of i IN loop: 5
Value of i AFTER loop: 6
Et il est de coutume de déclarer le « contre » pour la boucle dans la boucle à moins que la valeur en cas de résiliation est nécessaire par la suite.
for (int i = 0; i <= 5; i++) {
}
// i is not available here