Instruction Switch
Fait partie de la section Fondamentaux du Journey C# de Coddy. Leçon 27 sur 69.
L’instruction switch est semblable à une instruction if à plusieurs branches. Au lieu d’évaluer une seule condition, elle compare la valeur d’une variable à plusieurs cas et exécute le code associé au cas correspondant.
Voici la structure de base d’une instruction switch :
switch (variable) {
case value1:
// Code à exécuter si variable est égal à value1
break;
case value2:
// Code à exécuter si variable est égal à value2
break;
// ... autres cas
default:
// Code à exécuter si aucun cas ne correspond
break;
}- Le mot-clé
switchest suivi de la variable que tu veux tester, entre parenthèses. - Chaque
casereprésente une valeur possible de la variable. - Le code dans chaque
caseest exécuté si la variable correspond à la valeur de ce cas.
- Chaque
casenon vide doit se terminer parbreak(oureturn), ce qui permet de sortir duswitch. L’omettre provoque une erreur de compilation : contrairement à C ou Java, C# ne permet jamais à l’exécution de « tomber » d’un case au suivant. Seules des étiquettes de case vides empilées les unes au-dessus des autres partagent le même code, comme illustré ci-dessous.
- Le cas
defaultest facultatif et est exécuté si aucun autre cas ne correspond.
Voici un exemple :
int day = 3;
string dayName;
switch (day) {
case 1:
dayName = "Monday";
break;
case 2:
dayName = "Tuesday";
break;
// ... cas pour les autres jours
default:
dayName = "Invalid day";
break;
}Vous pouvez également combiner plusieurs cas en un seul :
int day = 3;
string dayName;
switch (day) {
case 1:
case 2:
case 3:
dayName = "Start of week";
break;
// ... cas pour les autres jours
default:
dayName = "Invalid day";
break;
}Défi
DébutantCrée un programme qui prend un numéro de mois (1 pour janvier, 2 pour février, etc.) et affiche la saison correspondante. Utilise une instruction switch pour la logique.
Les saisons et les mois correspondants sont :
Winter: décembre (12), janvier (1), février (2)Spring: mars (3), avril (4), mai (5)Summer: juin (6), juillet (7), août (8)Autumn: septembre (9), octobre (10), novembre (11)
Affiche le nom de la saison exactement comme écrit ci-dessus, en anglais.
Essayez vous-même
using System;
public class Program {
public static void Main(string[] args) {
int month = int.Parse(Console.ReadLine());
string season = "";
// Écrivez votre code ci-dessous
Console.WriteLine(season);
}
}Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
4Les opérateurs, partie 1
Opérateurs arithmétiquesOpérateur moduloIncrémentation / DécrémentationPost-incrémentation / Post-décrémentationRaccourcis arithmétiques7Entrées/Sorties de base
Sortie de baseInterpolation de chaînesLecture d'entréeParserRécapitulatif - Jusqu'à 120Récapitulatif - Vrai ou Faux10Méthodes (Fonctions)
Déclaration de méthodesParamètres de méthodeTypes de retourParamètres optionnelsRécapitulatif - Fonction de validationMéthodes Void13Itération sur les collections
Utilisation de la boucle ForBoucle ForeachOpérations courantes sur les tableaux5Opérateurs Partie 2
Opérateurs de comparaisonOpérateurs logiques Partie 1Opérateurs logiques Partie 2Récapitulatif - Logique simpleOpérateurs logiques Partie 33Variables - Partie 2
VarConstantesConventions de nommageRécapitulatif - Initialisation des variablesType Casting6Prise de décision
Instruction IfIf - ElseInstruction SwitchOpérateur ternaireRécapitulatif - If ElseIf - Else imbriqués9Boucles
Boucle ForBoucle WhileBoucle Do WhileBreakContinueBoucles imbriquéesBoucle infinieRécapitulatif - Entrée dynamique12Opérations sur les chaînes
Méthodes de chaînes - Partie 1Méthodes de chaînes - Partie 2Formatage de chaînesEntraînez-vous par vous-même : Compilateur C# en ligne