Switch mit Bereichen
Teil des Abschnitts Grundlagen der Swift-Journey von Coddy. Lektion 30 von 86.
Switch-Anweisungen werden noch leistungsfähiger, wenn du Bereiche anstelle einzelner Werte verwendest. Das ist perfekt, um Zahlen in Gruppen einzuteilen, beispielsweise eine Punktzahl in eine Note umzuwandeln.
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")
}Der Operator ... erstellt einen geschlossenen Bereich, der beide Endpunkte einschließt, sodass 90...100 90, 91 und alle Werte bis einschließlich 100 umfasst. Der Operator ..< erstellt einen halboffenen Bereich, der die obere Grenze ausschließt: 80..<90 umfasst die Werte von 80 bis 89.
Swift prüft jeden Fall der Reihe nach und führt den ersten passenden aus. Da unsere Punktzahl 85 beträgt, liegt sie im Bereich 80..<90, daher wird „B“ ausgegeben. Dieser Ansatz ist wesentlich übersichtlicher, als mehrere else if-Bedingungen mit Vergleichsoperatoren zu schreiben.
Aufgabe
EinfachSchreibe eine Funktion getAgeCategory, die age übernimmt und basierend auf Altersbereichen die Kategorie der Lebensphase zurückgibt.
Verwende eine switch-Anweisung mit Bereichen, um das Alter in eine von fünf Lebensphasen einzuordnen.
Bedingungen:
0...2– gib"Infant"zurück3...12– gib"Child"zurück13...19– gib"Teenager"zurück20...64– gib"Adult"zurück65...120– gib"Senior"zurück- Jeder andere Wert – gib
"Invalid age"zurück
Parameter:
age(Int): Das Alter der Person
Rückgabewert: Die Kategorie der Lebensphase als String
Probier es selbst
func getAgeCategory(age: Int) -> String {
// Schreibe hier den Code
}
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorZusammengesetzte ZuweisungRückblick – Einfache MathematikVergleichsoperatoren7Grundlagen der Ein- und Ausgabe
Print-FunktionString-InterpolationReadLine-EingabeTypkonvertierungWiederholung – Bis 120Wiederholung – Wahr oder falsch10Funktionen
Eine Funktion deklarierenParameter und ArgumenteRückgabewerteArgumentbezeichnungenWiederholung – Sigma-FunktionWiederholung – ValidierungsfunktionStandardwerte13Über Sequenzen iterieren
Über Elemente iterierenDie Enumerate-MethodeÜber Strings iterieren Teil 1Über Strings iterieren Teil 22Variablen
let vs. varTypannotationenZahlenStringBooleanNamenskonventionenRückblick – Variablen initialisieren5Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Zusammenfassung – Einfache LogikLogische Operatoren Teil 3Ternärer Operator8Rechner zum Teilen der Rechnung
WillkommensnachrichtEingaben erfassen11FizzBuzz mit einer Wendung
SpielübersichtDie FizzBuzz-Funktion14Arrays – Fortgeschritten
Array-Slicing Teil 1Array-Slicing Teil 2SequenzoperatorenDie Contains-Methode3Optionals
Was sind Optionals?Entpacken mit If LetGuard LetNil-Coalescing-OperatorZusammenfassung – Sicheres Entpacken6Entscheidungen treffen
If-AnweisungIf - ElseRückblick – Einfacher TaschenrechnerSwitch-AnweisungSwitch mit Bereichen9Schleifen
For-In-SchleifeWhile-SchleifeRepeat-While-SchleifeBreakContinueZusammenfassung – FakultätBereiche in SchleifenVerschachtelte SchleifeZusammenfassung – Dynamische EingabeÜbe selbstständig: Swift-Playground