Switch con intervalli
Fa parte della sezione Fondamenti del percorso Swift di Coddy. Lezione 30 di 86.
Le istruzioni switch diventano ancora più potenti quando usi gli intervalli invece dei singoli valori. È perfetto per suddividere i numeri in gruppi, ad esempio convertendo un punteggio in un voto.
let score = 85
switch score {
case 90...100:
print("A")
case 80..<90:
print("B")
case 70..<80:
print("C")
case 60..<70:
print("D")
default:
print("F")
}L'operatore ... crea un intervallo chiuso che include entrambi gli estremi, quindi 90...100 corrisponde a 90, 91 e così via fino a 100. L'operatore ..< crea un intervallo semiaperto che esclude il limite superiore: 80..<90 corrisponde ai valori da 80 a 89.
Swift controlla ogni caso in ordine ed esegue il primo corrispondente. Poiché il nostro punteggio è 85, rientra in 80..<90, quindi viene stampata "B". Questo approccio è molto più pulito che scrivere più condizioni else if con operatori di confronto.
Sfida
FacileScrivi una funzione getAgeCategory che accetta age e restituisce la categoria della fase della vita in base alle fasce d'età.
Usa un'istruzione switch con intervalli per classificare l'età in una delle cinque fasi della vita.
Condizioni:
0...2- restituisci"Infant"3...12- restituisci"Child"13...19- restituisci"Teenager"20...64- restituisci"Adult"65...120- restituisci"Senior"- Qualsiasi altro valore - restituisci
"Invalid age"
Parametri:
age(Int): l'età della persona
Restituisce: la categoria della fase della vita come String
Provalo tu
func getAgeCategory(age: Int) -> String {
// Scrivi il codice qui
}
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 moduloAssegnazione compostaRiepilogo - Matematica sempliceOperatori di confronto7I/O di base
Funzione printInterpolazione di stringheInput con ReadLineConversione di tipoRipasso - Fino a 120Ripasso - Vero o falso10Funzioni
Dichiarare una funzioneParametri e argomentiValori restituitiEtichette degli argomentiRiepilogo - Funzione SigmaRiepilogo - Funzione di validazioneValori predefiniti13Iterare sulle sequenze
Iterare sugli elementiIl metodo enumerateIterare sulle stringhe P1Iterare sulle stringhe P22Variabili
Let vs VarAnnotazioni di tipoNumeriStringaBooleanoConvenzioni di denominazioneRiepilogo - Inizializzare le variabili5Operatori Parte 2
Operatori logici Parte 1Operatori logici Parte 2Riepilogo - Logica sempliceOperatori logici Parte 3Operatore ternario8Calcolatore per dividere il conto
Messaggio di benvenutoAcquisire i dati11FizzBuzz con una variante
Panoramica del giocoLa funzione FizzBuzz3Valori opzionali
Cosa sono i valori opzionaliEstrazione del valore con if letGuard letOperatore di coalescenza nilRiepilogo - Estrazione sicura del valore6Decisioni
Istruzione ifIf - ElseRipasso - Calcolatrice sempliceIstruzione switchSwitch con intervalli9Cicli
Ciclo for-inCiclo whileCiclo repeat-whileBreakContinueRipasso - FattorialeIntervalli nei cicliCiclo annidatoRipasso - Input dinamicoEsercitati da solo: Playground Swift