Java - prise de décision : Guide pour débutants

Bienvenue, futurs programmeurs Java !aujourd'hui, nous plongeons dans un des aspects les plus cruciaux de la programmation : la prise de décision. Tout comme dans la vie réelle, nos programmes doivent faire des choix basés sur certaines conditions. Explorons comment Java gère cette tâche importante.

Java - Decision Making

Instructions de contrôle Java

Les instructions de contrôle constituent l'ossature de la prise de décision en Java. Elles permettent à nos programmes d'exécuter différents blocs de code en fonction de conditions spécifiques. Commençons par la plus courante : l'instruction if.

L'instruction if

L'instruction if est comme un feu tricolore pour votre code. Elle vérifie une condition et, si elle est vraie, permet l'exécution d'un bloc de code.

int age = 18;
if (age >= 18) {
System.out.println("Vous pouvez voter !");
}

Dans cet exemple, si l'âge est de 18 ans ou plus, le message sera imprimé. Sinon, rien ne se passe. Simple, non ?

L'instruction if-else

Mais que faire si nous voulons faire quelque chose lorsque la condition est fausse ? En entrez l'instruction if-else :

int temperature = 25;
if (temperature > 30) {
System.out.println("Il fait chaud dehors !");
} else {
System.out.println("Le temps est agréable.")
}

Ici, si la température est supérieure à 30, nous obtenons le message "chaud". Sinon, nous voyons le message "agréable".

La ladder if-else-if

Parfois, nous devons vérifier plusieurs conditions. C'est là que la ladder if-else-if becomes handy :

int score = 75;
if (score >= 90) {
System.out.println("Note A");
} else if (score >= 80) {
System.out.println("Note B");
} else if (score >= 70) {
System.out.println("Note C");
} else {
System.out.println("Doit s'améliorer");
}

Ce code vérifie la note et attribue une lettre en conséquence. C'est comme une série de haies, et le code s'arrête à la première condition qui est vraie.

L'instruction switch

Lorsque vous avez plusieurs options basées sur une seule variable, l'instruction switch peut être votre meilleur ami :

int dayNumber = 3;
switch (dayNumber) {
case 1:
System.out.println("Lundi");
break;
case 2:
System.out.println("Mardi");
break;
case 3:
System.out.println("Mercredi");
break;
// ... autres jours ...
default:
System.out.println("Numéro de jour invalide");
}

L'instruction switch vérifie la valeur de dayNumber et exécute le cas correspondant. Le cas par défaut est comme un filet de sécurité pour les valeurs inattendues.

L'opérateur ternaire : ?:

Parlons maintenant d'un raccourci pratique en Java : l'opérateur ternaire. Il est comme une instruction if-else compacte :

int x = 10;
String result = (x > 5) ? "Supérieur à 5" : "Inférieur ou égal à 5";
System.out.println(result);

Cette expression vérifie si x est supérieur à 5. Si vrai, il affecte "Supérieur à 5" à result ; sinon, il affecte "Inférieur ou égal à 5".

Exemples en action

Mettons notre nouvelle connaissance au travail avec un exemple concret. Imaginez que nous créons un programme simple pour déterminer les tarifs des billets pour un cinéma :

public class MovieTicketPricing {
public static void main(String[] args) {
int age = 25;
boolean isStudent = false;
boolean isWeekend = true;

double ticketPrice;

if (age < 12) {
ticketPrice = 5.0;
} else if (age >= 65) {
ticketPrice = 7.0;
} else if (isStudent) {
ticketPrice = 8.0;
} else {
ticketPrice = 12.0;
}

if (isWeekend) {
ticketPrice += 2.0;
}

System.out.println("Le prix de votre billet est : $" + ticketPrice);
}
}

Dans cet exemple, nous utilisons plusieurs instructions if-else pour déterminer le prix de base du billet en fonction de l'âge et du statut d'étudiant. Ensuite, nous utilisons une autre instruction if pour ajouter une surcharge le week-end si applicable.

Tableau de flux de contrôle

Voici un tableau pratique résumant les instructions de flux de contrôle que nous avons couvertes :

Instruction But Syntaxe
if Exécute du code si une condition est vraie if (condition) { code }
if-else Exécute un bloc si vrai, un autre si faux if (condition) { code1 } else { code2 }
if-else-if Vérifie plusieurs conditions en séquence if (condition1) { code1 } else if (condition2) { code2 } else { code3 }
switch Sélectionne un des nombreux blocs de code à exécuter switch(expression) { case value1: code1; break; ... default: codeDefault; }
?: (ternaire) Forme courte de if-else pour les affectations result = (condition) ? trueValue : falseValue;

Conclusion

La prise de décision est au cœur de la logique de programmation. Avec ces outils dans votre boîte à outils Java, vous êtes bien parti pour créer des programmes dynamiques et réactifs. N'oubliez pas, la pratique fait le maître ! Essayez de créer vos propres scénarios et de mettre en œuvre ces structures de contrôle.

À mesure que vous continuez votre voyage Java, vous découvrirez encore plus de moyens de rendre vos programmes plus intelligents et plus efficaces. Continuez à coder, à apprendre, et surtout, amusez-vous bien !

Qu'est-ce qu'il y a après ? Nous allons plonger dans les boucles, qui nous permettent de répéter efficacement les blocs de code. Préparez-vous à prendre vos compétences Java au niveau supérieur !

Credits: Image by storyset