Clauses de garde
Fait partie de la section Logique & Flux du Journey Java de Coddy — leçon 38 sur 59.
Les clauses de garde sont des instructions conditionnelles au début d'une méthode qui vérifient les conditions invalides et effectuent un retour anticipé. Elles aident à rendre le code plus propre et plus lisible en traitant les cas limites en premier.
Voyons une méthode sans clauses de garde :
public int divide(int num, int den) {
if (den != 0) {
if (num >= 0) {
return num / den;
} else {
return -1;
}
} else {
return -1;
}
}La même méthode avec des clauses de garde :
public int divide(int num, int den) {
if (den == 0) return -1;
if (num < 0) return -1;
return num / den;
}Après avoir exécuté l'un ou l'autre code avec divide(10, 2), le résultat est :
5
Défi
FacileCréez une méthode nommée validatePassword qui prend un argument :
- Une chaîne de caractères (
password) à valider
La méthode doit utiliser des clauses de garde (guard clauses) pour valider le mot de passe et retourner une chaîne de message basée sur ces règles :
- Si password est null : retournez "Password cannot be null"
- Si password est vide : retournez "Password cannot be empty"
- Si la longueur de password est inférieure à 8 : retournez "Password must be at least 8 characters"
- Si password contient des espaces : retournez "Password cannot contain spaces"
- Si toutes les vérifications réussissent : retournez "Valid password"
Essayez vous-même
import java.util.Scanner;
public class Main {
public static String validatePassword(String password) {
// Écrivez votre code ici
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String password = scanner.nextLine();
if (password.equals("null")) {
password = null;
}
System.out.println(validatePassword(password));
}
}Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Logique & Flux
1Tableaux multidimensionnels
Bases des tableaux 2DAccès aux éléments des tableaux 2DBoucles imbriquées avec les tableaux 2DRécapitulatif - Tableaux 2DAddition et soustraction de matricesTableaux irréguliersTableaux 3D et au-delàMotifs courants des tableaux 2DRécapitulatif - Tout sur les tableaux4HashSet Partie 1
Qu'est-ce qu'un HashSet ?Ajouter un ÉlémentSupprimer un ÉlémentVérifier si un Élément ExisteVide et TailleVider et ClonerRécapitulatif - HashSet7Gestion des erreurs de base
Bases du try-catchBloc finallyLever des exceptionsExceptions personnalisées2HashMap Partie 1
Qu'est-ce qu'une HashMap ?Déclarer une HashMapAccéder aux ValeursVérifier si une Clé ExisteModifier les DictionnairesRécapitulatif - HashMap3HashMap Partie 2
Méthodes HashMapItérer avec keySet()Itérer avec entrySet()HashMap imbriquéRécapitulatif - Gérer l'entrepôtRécapitulatif - Opérations HashMap6Flux de contrôle avancé
Instructions étiquetéesExpression switchAppariement de motifsClauses de gardeRécapitulatif - Flux de contrôle9Projet - Compteur de Mots Uniques
Entrée de Texte et StockageTraitement des Mots