Conditions, boucles et méthodes
Ce que tu vas apprendre
- Choisir une branche de code avec
ifetswitch. - Répéter des instructions avec
foretwhile. - Écrire tes propres méthodes avec paramètres et valeur de retour.
if et else
Une condition est une expression dont le résultat est true ou false. if exécute un bloc seulement si elle est vraie :
int minutes = 45;
if (minutes <= 15) {
System.out.println("Rapide");
} else if (minutes <= 60) {
System.out.println("Moyen");
} else {
System.out.println("Long");
}
Java teste les conditions de haut en bas et s'arrête à la première vraie. Les parenthèses autour de la condition sont obligatoires.
Les opérateurs de comparaison
| Opérateur | Sens |
|---|---|
== et != | égal, différent |
<, <=, >, >= | comparaisons d'ordre |
&& | et |
|| | ou |
! | non |
if (minutes <= 30 && vegetarien) {
System.out.println("Parfait pour ce soir");
}
Avec &&, si la première partie est fausse, Java n'évalue pas la seconde.
switch
Quand une valeur doit être comparée à plusieurs cas, switch est plus lisible qu'une chaîne de if. Sa forme moderne renvoie directement une valeur :
String jour = "samedi";
String menu = switch (jour) {
case "samedi", "dimanche" -> "Brunch";
case "vendredi" -> "Poisson";
default -> "Plat du jour";
};
Chaque case utilise la flèche ->. Plusieurs valeurs se séparent par une virgule. Le cas default couvre tout le reste, ce qui est obligatoire quand switch produit une valeur.
La boucle for
Une boucle répète un bloc de code. for convient quand on connaît le nombre de tours :
for (int i = 1; i <= 3; i++) {
System.out.println("Étape " + i);
}
Entre les parenthèses, trois parties séparées par des points-virgules :
int i = 1: l'initialisation, exécutée une fois.i <= 3: la condition, testée avant chaque tour.i++: la mise à jour après chaque tour, iciiaugmente de 1.
Le résultat affiche « Étape 1 », « Étape 2 » puis « Étape 3 ».
while et do-while
while répète tant que la condition reste vraie. C'est utile quand on ne sait pas à l'avance combien de tours seront nécessaires :
int portions = 1;
while (portions < 10) {
portions = portions * 2;
}
System.out.println(portions); // 16
Si la condition est fausse dès le départ, le bloc ne s'exécute jamais. do { ... } while (condition); fait l'inverse : il s'exécute au moins une fois.
Ctrl+C arrête le programme.break quitte la boucle immédiatement, continue passe au tour suivant.
Écrire une méthode
Une méthode est un bloc de code nommé, que l'on peut appeler autant de fois que nécessaire. Elle évite de recopier le même code.
public class Cuisine {
static double prixParPortion(double prixTotal, int portions) {
return prixTotal / portions;
}
public static void main(String[] args) {
double prix = prixParPortion(12.0, 4);
System.out.println(prix); // 3.0
}
}
Lis la première ligne de gauche à droite :
static: la méthode appartient à la classe, on peut l'appeler sans créer d'objet (nous y reviendrons).double: le type de la valeur renvoyée.prixParPortion: le nom, encamelCase.(double prixTotal, int portions): les paramètres, c'est-à-dire les valeurs reçues.
return renvoie le résultat et termine la méthode. Quand la méthode ne renvoie rien, le type est void, comme pour main.
Surcharger une méthode
Java accepte plusieurs méthodes de même nom si leurs paramètres diffèrent. C'est la surcharge.
static String titre(String nom) {
return nom;
}
static String titre(String nom, int minutes) {
return nom + " (" + minutes + " min)";
}
Le compilateur choisit la bonne version d'après les arguments fournis.
À retenir
if,else ifetelsechoisissent un bloc selon une condition booléenne.switchavec des flèches->produit une valeur et doit prévoir un casdefault.forrépète un nombre connu de fois,whiletant qu'une condition est vraie.- Une méthode déclare un type de retour, un nom et des paramètres ;
voidsignifie qu'elle ne renvoie rien. - La surcharge permet d'avoir plusieurs méthodes du même nom avec des paramètres différents.
Pour aller plus loin
Sources officielles
Ensuite
Variables, types et String
Déclarer des variables Java, choisir entre types primitifs et String, et manipuler du texte.
Tableaux, classes et records
Stocker plusieurs valeurs dans un tableau, puis modéliser une recette avec une classe, un constructeur, l'encapsulation et un record.
- Projet
- Lignes de code
- Niveau
- Le quartier
- Appartement
- Java
- Pièce
- 3/7
- Plan n°
- java/03.conditions-boucles-methodes