01/06/2023 19:26 Cours java : Instructions
Instructions
Instructions
11 Instruction
Instruction bloc
bloc Sommaire
Les accolades jouent avec les instructions le même rôle que les parenthèses avec les 1. Instruction bloc
expressions : elles permettent de faire d’une séquence d’instructions séparées par des ; 2. Instructions conditionnelles
une seule instruction. On attachera un soin particulier à l’indentation des instructions 3. Instruction switch
mises entre accolades : 4. Itérations
41. while
{ 42. do
La liste d’instructions peut être vide.
I1 ; 43. for
I2 ; L'exécution d'une instruction bloc, c'est l'exécution en séquence des
5. Exemples
. . . instructions composant l'instruction bloc.
In ; 6. for du jdk1.5
Une variable déclarée dans un bloc a une portée qui va jusqu'à la fin du
7. Etiquettes
bloc : elle est connue depuis sa déclaration, jusqu'à l'accolade fermante.
}
22 Instructions
Instructions if
if
Il existe 2 formes de l’instruction conditionnelle :
L’exécution de l’instruction commence par l’évaluation de
if( expression booléenne ) instruction I1 ; l’expression booléenne : si celle-ci a valeur true, alors il y a
exécution de l’instruction I1.
L’exécution de l’instruction commence par l’évaluation de
if( expression booléenne ) instruction I1 ; l’expression booléenne : si celle-ci a valeur true, alors il y a
else instructionI2 ; exécution de l’instruction I1 sinon il y a exécution de
l’instruction I2.
Les instructions I1 ou I2 peuvent être l’instruction vide.
33 Instruction
Instruction switch
switch
L’instruction switch se construit de la façon suivante :
switch( expression entière ou caractère ){
case v1 : instructions I1;
case v2 : instructions I2;
...
default : instructions In;
}
L’exécution de l’instruction commence par l’évaluation de l’expression entière, soit v cette valeur : Puis on recherche la
première valeur vi égale à v : on commence alors l’exécution des instructions qui suivent la valeur vi. Si cette valeur n’est pas
trouvée, ce sont les instructions In qui sont exécutées.
En général après l’exécution de I1, on ne désire pas exécuter I2, etc … Alors la structure du switch sera plutôt :
switch( expression entière ou caractère ){
case v1 : instructions I1; break;
[Link] 1/4
01/06/2023 19:26 Cours java : Instructions
case v2 : instructions I2; break;
...
default : instructions In;
}
Les instructions I1, I2 ou In peuvent être l’instruction vide.
44 Itérations
Itérations
Les instructions d'itération sont des instructions qui permettent de répéter l'exécution d'une (ou plusieurs) instruction(s)
zéro, une ou plusieurs fois.
4.1
4.1 while
while
Le tantque se construit de la façon suivante :
while( expression booléenne ) Instruction ;
On évalue d’abord l’expression booléenne :
1. si celle-ci a la valeur true, on exécute l’instruction puis on re-exécute le tantque
2. si celle-ci a la valeur false l’exécution du tantque est terminée
L’instruction peut être l’instruction vide.
4.2
4.2 do
do
Le do se construit de la façon suivante :
do{
instructions
}while( expression booléenne);
On exécute d’abord les instructions, puis on évalue l’expression booléenne :
1. si celle-ci a la valeur true, on re-exécute le do
2. si celle-ci a la valeur false l’exécution du do est terminée
La liste d’instructions peut être l’instruction vide.
4.3
4.3 for
for
Le for se construit de la façon suivante :
for(initialisations ; expression booléenne ; mises à jour) instructions ;
1. On exécute d’abord les initialisations
2. Puis on évalue l’expression booléenne :
si celle-ci a la valeur true, on exécute les instructions de mise à jour, puis on re-exécute le for à partir de 2.
si celle-ci a la valeur false, l’exécution du for est terminée
Les initialisations et les mises à jour sont séparées par des virgules.
La liste d’instructions peut être l’instruction vide.
Les instructions dépendant des itérations for, while,ou do peuvent contenir des instructions :
break : qui stoppe l’itération.
continue : qui permet d’aller directement à l’évaluation de la condition de continuation.
[Link] 2/4
01/06/2023 19:26 Cours java : Instructions
Les instructions Java peuvent être étiquetées, alors les break, ou continue inclus dans une instruction étiquetée peuvent
faire référence à cette étiquette :
55 Exemple
Exemple ::
Nous nous proposons de calculer la somme des n premiers entiers, pour n>=0 :
while
int n = 10;
int somme = 0;
int i;
i = 1;
while( i<=n){
somme = somme + i;
i = i+1;
}
[Link](" la somme des "+n+" premiers entiers est : "+somme);
for
int n = 10;
int somme = 0;
int i;
for( i=1; i<=n; ++i)
somme = somme + i;
[Link](" la somme des "+n+" premiers entiers est : "+somme);
do
int n = 10;
int somme = 0;
int i=0;
do{
somme = somme + i;
++i;
}while(i<=n);
[Link](" la somme des "+n+" premiers entiers est : "+somme);
66 for
for :: le
le nouveau
nouveau for
for du
du JDK
JDK 1.5
1.5 ::
for(Paramètre formel : expression) instruction;
L'expression doit être un tableau ou une instance de classe implémentant l'interface Iterable : L'interface [Link]
étend depuis le JDK1.5 l'interface Iterable.
Exemples :
1. int [] t = {1, 2, 3, 4, 5, 6};
for( int a : t) [Link](a);
L'instruction suivante ne modifie pas le tableau t.
[Link] 3/4
01/06/2023 19:26 Cours java : Instructions
for( int a : t)++a;
2. Liste l = new ArrayList();
for( int a : l) [Link](a);
77 Les
Les étiquettes
étiquettes
En Java toute instruction (pas les déclarations) peut être étiquettée. Une étiquette est un identificateur Java suivi de :
Exemple
int a = 0;
etiq1 : if(true);
etiq2 : switch(1){
// ...
}
etiq3 : a=1;
etiq4 : a++;
etiq5 : {
// ...
}
etiq6 : for(; ; ) break;
etiq7 : while( true ) break;
L'utilisation à tort et à travers des étiquettes permet d'écrire des programmes illisibles. La seule utilisation qui peut être
intéressante est de pouvoir arrêter une itération englobant une autre itération depuis l'intérieur de cette dernière :
etiq1 : while(true){
while(...){
if(...) break etiq1; // Arrête l'itération étiquettée par etiq1
[Link] 4/4