for ( <<initialisation>> ; <<condition de continuation>> ; <<instruction d'itération>> )
<<Bloc d'instructions>>
où :
<<Bloc d'instructions>>
- initialisation : est une instruction d'initialisation de la boucle qui est exécutée en premier. Il est conseillé d'y déclarer la variable compteur pour qu'elle soit bien locale à la boucle.
- condition de continuation : est une expression booléenne qui est testée à chaque itération avant d'exécuter le bloc d'instructions. Si l'expression booléenne est fausse, le bloc d'instructions n'est pas exécuté et la boucle s'arrête.
- instruction d'itération : cette instruction est exécutée après le bloc d'instructions. Elle permet de mettre à jour la valeur de la variable compteur.
Schéma d'exécution d'une boucle for. L'instruction d'initialisation est exécutée en premier. La condition de continuation est testée. Si cette condition est vérifiée le bloc d'instructions est exécuté puis l'instruction d'itération est exécutée à son tour. On reteste alors la condition pour savoir s'il faut refaire un tour de boucle. Si la condition n'est pas vérifiée, on sort de la boucle.
Exemples
Voici un exemple simple pour afficher les nombres de 0 à 9.
for ( int i=0 ; i<10 ; i = i+1 )
{
System.out.println( "Nombre : " + i )
}
Résultat :{
System.out.println( "Nombre : " + i )
}
- Déclaration et initialisation de la variable locale i à la valeur 0
- Test i<10 : vrai car i vaut 0
- Exécution de System.out.println( "Nombre : " + i ) : affichage de Nombre 0
- Incrémentation de i qui vaut maintenant 1
- Test i<10 : vrai car i vaut 1
- Exécution de System.out.println( "Nombre : " + i ) : affichage de Nombre 1
- Incrémentation de i qui vaut maintenant 2
- Test i<10 : vrai car i vaut 2
- Exécution de System.out.println( "Nombre : " + i ) : affichage de Nombre 9
- Incrémentation de i qui vaut maintenant 10
- Test i<10 : faux car i vaut 10 Fin de la boucle
for ( int i=9 ; i>=0 ; i = i-1 )
{
System.out.println( "Nombre : " + i )
}
Résultat :{
System.out.println( "Nombre : " + i )
}
Il est même possible de compter de trois en trois en utilisant i=i+3 comme instruction d'itération et en conservant i<10 comme condition de continuation (et surtout pas i!=10, voyez-vous pourquoi ?).
Remarque :
Cette boucle for est parfois appelée "boucle for (POUR) classique", par opposition à une autre boucle for apparue plus tard dans le langage Java et appelée "boucle for each (POUR CHAQUE)".
Aucun commentaire:
Enregistrer un commentaire