Istruzione switch
Fa parte della sezione Fondamenti del percorso C# di Coddy. Lezione 27 di 69.
L'istruzione switch è simile a un'istruzione if a più vie. Invece di valutare una singola condizione, confronta il valore di una variabile con più casi ed esegue il codice associato al caso corrispondente.
Ecco la struttura di base di un'istruzione switch:
switch (variable) {
case value1:
// Codice da eseguire se variable è uguale a value1
break;
case value2:
// Codice da eseguire se variable è uguale a value2
break;
// ... altri casi
default:
// Codice da eseguire se nessun caso corrisponde
break;
}- La parola chiave
switchè seguita dalla variabile che vuoi verificare, tra parentesi. - Ogni
caserappresenta un possibile valore della variabile. - Il codice all'interno di ogni
caseviene eseguito se la variabile corrisponde al valore di quel caso.
- L'istruzione
breakè fondamentale: esce dalloswitchdopo l'esecuzione di un caso. Senza di essa, l'esecuzione passerebbe al caso successivo.
- Il caso
defaultè facoltativo e viene eseguito se nessun altro caso corrisponde.
Ecco un esempio:
int day = 3;
string dayName;
switch (day) {
case 1:
dayName = "Monday";
break;
case 2:
dayName = "Tuesday";
break;
// ... casi per gli altri giorni
default:
dayName = "Invalid day";
break;
}Puoi anche combinare più casi in uno:
int day = 3;
string dayName;
switch (day) {
case 1:
case 2:
case 3:
dayName = "Start of week";
break;
// ... casi per gli altri giorni
default:
dayName = "Invalid day";
break;
}Sfida
PrincipianteCrea un programma che accetta un numero di mese (1 per January, 2 per February, ecc.) e stampa la stagione a cui appartiene. Usa un'istruzione switch per la logica.
Le stagioni e i mesi corrispondenti sono:
Winter: December (12), January (1), February (2)Spring: March (3), April (4), May (5)Summer: June (6), July (7), August (8)Autumn: September (9), October (10), November (11)
Stampa il nome della stagione esattamente come scritto sopra, in inglese.
Provalo tu
using System;
public class Program {
public static void Main(string[] args) {
int month = int.Parse(Console.ReadLine());
string season = "";
// Scrivi il tuo codice qui sotto
Console.WriteLine(season);
}
}Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Operatori Parte 1
Operatori aritmeticiOperatore moduloIncremento/DecrementoIncremento/Decremento postfissoAbbreviazioni aritmetiche7Input/Output di base
Output di baseInterpolazione di stringheLettura dell'inputParsingRipasso - Fino a 120Ripasso - Vero o falso5Operatori Parte 2
Operatori di confrontoOperatori logici Parte 1Operatori logici Parte 2Riepilogo - Logica sempliceOperatori logici Parte 33Variabili Parte 2
VarCostantiConvenzioni di denominazioneRiepilogo - Inizializzare le variabiliConversione dei tipi6Prendere decisioni
Istruzione ifIf - ElseIstruzione switchOperatore ternarioRiepilogo - If ElseIf - Else annidati9Cicli
Ciclo forCiclo whileCiclo do whileBreakContinueCiclo annidatoCiclo infinitoRiepilogo - Input dinamico12Operazioni sulle stringhe
Metodi delle stringhe Parte 1Metodi delle stringhe Parte 2Formattazione delle stringheEsercitati da solo: Compilatore C# online