Menu
CoddyTech

`switch` con espressioni

Fa parte della sezione Fondamenti del percorso GO di Coddy. Lezione 40 di 109.

Impariamo a usare le espressioni nelle istruzioni switch in Go, che ci permettono di valutare le condizioni direttamente in ogni case.

Per prima cosa, vediamo come usare un'istruzione switch con una condizione in ogni case per verificare se un numero è positivo, negativo o zero:

num := -5
switch {
case num > 0:
    fmt.Println("Positive number")
case num < 0:
    fmt.Println("Negative number")
default:
    fmt.Println("Zero")
}

Dopo aver eseguito questo codice, il programma mostrerà sullo schermo:

Negative number

Nota che stiamo usando switch { senza alcun valore dopo. Ciò significa che Go valuterà ogni espressione del case come una condizione booleana. Poiché num è -5, il secondo case num < 0 restituisce true, quindi viene stampato "Negative number".

Possiamo anche inizializzare una variabile direttamente nell'istruzione switch. Vediamo come funziona:

switch num := -5; {
case num > 0:
    fmt.Println("Positive number")
case num < 0:
    fmt.Println("Negative number")
default:
    fmt.Println("Zero")
}

Dopo aver eseguito questo codice, otteniamo lo stesso risultato:

Negative number

In questo esempio, abbiamo dichiarato e inizializzato num direttamente nell'istruzione switch. Il punto e virgola separa l'inizializzazione dall'espressione switch (che qui è vuota). Questo rende il nostro codice più compatto mantenendo la stessa funzionalità.

challenge icon

Sfida

Principiante
In questa sfida, ti eserciterai a usare una semplice espressione switch in Go. Devi completare il codice per determinare la descrizione di un giorno in base al suo nome usando un'istruzione switch.

Una variabile dayName è già definita con il valore "Wednesday". Il tuo compito è usare un'espressione switch per assegnare alla variabile description:
- "Start of the week" per Monday
- "Midweek" per Wednesday
- "Almost weekend" per Friday
- "Weekend" per Saturday o Sunday
- "Regular day" per qualsiasi altro giorno

Provalo tu

	// TODO: Scrivi un'istruzione switch che imposti la descrizione in base a dayName
	// Per Monday: "Start of the week"
	// Per Wednesday: "Midweek"
	// Per Friday: "Almost weekend"
	// Per Saturday o Sunday: "Weekend"
	// Per qualsiasi altro giorno: "Regular day"
	
	
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Fondamenti

Esercitati da solo: Compilatore Go online