if_statement ::= "if" "(" expression ")" statement [ "else" statement ]
This rule is called by-> statement
Notons qu'une expression est de type booléen et que l'on ne peut pas utiliser un entier valant 0 ou 1 comme on le ferait en C.
class exSimple1 {
public static void main(String args[]) {
int entA = 10;
int entB = 12;
int entX;
System.out.println("L'entier A vaut "+entA);
System.out.println("L'entier B vaut "+entB);
if (entA < entB)
System.out.println("A est plus petit que B");
else if (entA == entB)
System.out.println("A est egal a B");
else
System.out.println("A est plus grand que B");
System.out.println("comptons de 1 a "+entA);
int somme = 0;
int fact = 1;
for (int i = 1;i <= entA;i++) {
System.out.print(" "+i);
somme += i;
fact *= i;
}
System.out.println();
System.out.println("la somme de tous les nombres de 1 a "+entA+" vaut "+somme);
System.out.println("la factorielle de "+entA+" vaut "+fact);
}
}
L'entier A vaut 10
L'entier B vaut 12
A est plus petit que B
comptons de 1 a 10
1 2 3 4 5 6 7 8 9 10
la somme de tous les nombres de 1 a 10 vaut 55
la factorielle de 10 vaut 3628800
if (cond1)
if (cond2)
instrA;
else
instrB;
instrB
ne sera exécuté que si cond1 est vraie ET cond2 est
fausses. La branche else
est toujours attachée au
dernier if
rencontré.