- Autore

- Nome
- Nelson Silva
- Social
Introduzione
Il switch è uno strumento potente in Go che consente ai programmatori di prendere decisioni basate su più casi. A differenza dei condizionali con if e else, il switch è spesso più leggibile, specialmente quando si gestiscono molte condizioni.
Fondamenti del Switch
- Verifica di Uguaglianza: Il
switchconfronta l'espressione fornita con i valori di ognicase. - Esecuzione Singola: A differenza di altri linguaggi, in Go, una volta che un
casecorrisponde, il programma esce dal bloccoswitch. Non è necessario un "break" esplicito. - Clausola Default: Se nessun
casecorrisponde, verrà eseguito il codice sottodefault. Tuttavia,defaultè opzionale.
Switch di Base
giorno := "giovedì"
switch giorno {
case "lunedì":
fmt.Println("Oggi è lunedì.")
case "martedì":
fmt.Println("Oggi è martedì.")
default:
fmt.Println("Non è né lunedì né martedì.")
}
Switch con Più Condizioni in un Case
È possibile combinare più valori possibili in un singolo case:
lettera := 'B'
switch lettera {
case 'A', 'E', 'I', 'O', 'U':
fmt.Println("Vocale")
default:
fmt.Println("Consonante")
}
Switch con Inizializzatore
Proprio come l'istruzione if, anche il switch può avere un'inizializzazione:
switch num := 5; num {
case 1, 3, 5, 7, 9:
fmt.Println("Numero dispari")
default:
fmt.Println("Numero pari")
}
Switch di Tipo
Go supporta anche un switch basato sul tipo, utile quando si lavora con le interfacce:
var x interface{} = "testo"
switch x.(type) {
case int:
fmt.Println("x è un intero")
case string:
fmt.Println("x è una stringa")
default:
fmt.Println("Tipo sconosciuto")
}
Conclusione
L'istruzione switch in Go offre un modo pulito ed efficiente per gestire più condizioni. Che si tratti di verificare valori o tipi, il switch rende il codice più organizzato e leggibile.