Zusammenfassung – Sicheres Entpacken
Teil des Abschnitts Grundlagen der Swift-Journey von Coddy. Lektion 15 von 86.
Aufgabe
EinfachSchreibe eine Funktion formatPlayerInfo, die den name, score und level eines Spielers als Zeichenketten entgegennimmt und eine formatierte Spielerzusammenfassung zurückgibt.
Verwende alle drei Techniken zum Auflösen von Optionals, die du gelernt hast, um mit möglicherweise fehlenden Werten umzugehen:
- Verwende
guard let, um zu prüfen, ob der Name gültig ist (nicht leer). Wenn der Name leer ist, gib sofort"Unknown player"zurück. - Verwende
??(Nil-Coalescing), um einen Standardwert von"0"für den Punktestand bereitzustellen, wenn der Punktestand leer ist. - Verwende
if let, um zu prüfen, ob das Level gültig ist (nicht leer). Wenn ein Wert vorhanden ist, füge es der Ausgabe hinzu; andernfalls lasse den Level-Teil weg.
Ausgabeformat:
- Wenn ein Level angegeben ist:
"[name] - Score: [score], Level: [level]" - Wenn das Level leer ist:
"[name] - Score: [score]"
Parameter:
name(String): Name des Spielers (eine leere Zeichenkette stellt nil dar)score(String): Punktestand des Spielers (eine leere Zeichenkette stellt nil dar)level(String): Level des Spielers (eine leere Zeichenkette stellt nil dar)
Rückgabe: Eine formatierte Zeichenkette mit den Informationen des Spielers oder "Unknown player", wenn der Name leer ist.
Hinweis: Wandle leere Zeichenketten innerhalb deiner Funktion in Optionals um, indem du prüfst, ob sie leer sind, und ihnen in diesem Fall nil zuweist.
Probier es selbst
func formatPlayerInfo(name: String, score: String, level: String) -> String {
// Code hier schreiben
}
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