Menu
Coddy logo textTech

Was sind Optionals

Teil des Abschnitts Grundlagen der Swift-Journey von Coddy — Lektion 11 von 86.

Manchmal hat eine Variable vielleicht überhaupt keinen Wert. In Swift repräsentieren wir das Fehlen eines Wertes mithilfe von Optionals. Ein Optional besagt: „Es gibt einen Wert, und er entspricht x“ oder „Es gibt überhaupt keinen Wert“.

Um ein Optional zu deklarieren, füge ein Fragezeichen ? nach dem Typ hinzu:

var nickname: String? = "Alex"
var age: Int? = nil

Im obigen Beispiel enthält nickname den Wert "Alex", während age den Wert nil enthält — Swifts Art zu sagen: „kein Wert“. Reguläre Variablen können nicht nil sein, aber Optionals schon.

Stellen Sie sich ein Optional wie eine Box vor, die etwas enthalten kann oder leer sein kann. Bevor Sie den Inhalt verwenden, müssen Sie prüfen, ob tatsächlich etwas darin ist. Dies ist ein wichtiges Sicherheitsmerkmal in Swift, das hilft, Abstürze durch unerwartet fehlende Werte zu verhindern.

var score: Int? = 100
print(score) // Optional(100)

score = nil
print(score) // nil

Beachten Sie, dass beim Ausgeben eines Optionals mit einem Wert Optional(100) anstelle von nur 100 angezeigt wird. Um auf den tatsächlichen Wert darin zuzugreifen, müssen Sie das Optional auspacken – was wir in den kommenden Lektionen behandeln werden.

challenge icon

Aufgabe

Einfach

Schreibe eine Funktion createOptional, die eine Zahl entgegennimmt und einen String zurückgibt, der zeigt, wie diese Zahl aussehen würde, wenn sie als Optional ausgegeben wird.

Wenn du ein Optional ausgibst, das einen Wert enthält, zeigt Swift es im Format Optional(value) an.

Erinnerung zur Funktionssyntax: In Swift verwendet eine Funktion, die einen Wert zurückgibt, den -> Pfeil, um den Rückgabetyp anzugeben, und das Schlüsselwort return, um das Ergebnis zurückzusenden. Zum Beispiel:

func myFunction(param: Int) -> String {<br>    return "result"<br>}

Du kannst den Rückgabe-String mittels String-Interpolation erstellen: "Optional(\(value))" — der Teil \(value) fügt die Zahl direkt in den String ein.

Parameter:

  • value (Int): Die Zahl, die im Optional-Format verpackt werden soll

Rückgabewert: Ein String im Format Optional(value), wobei value die angegebene Zahl ist.

Beispiel: Wenn die Eingabe 100 ist, gib "Optional(100)" zurück.

Spickzettel

In Swift repräsentieren Optionals das Fehlen oder Vorhandensein eines Wertes. Ein Optional kann entweder einen Wert enthalten oder nil sein.

Um ein Optional zu deklarieren, fügen Sie ein Fragezeichen ? nach dem Typ hinzu:

var nickname: String? = "Alex"
var age: Int? = nil

Reguläre Variablen können nicht nil sein, Optionals hingegen schon. Verwenden Sie nil, um „keinen Wert“ darzustellen:

var score: Int? = 100
score = nil

Wenn ein Optional mit einem Wert ausgegeben wird, zeigt Swift dies als Optional(value) an:

var score: Int? = 100
print(score) // Optional(100)

score = nil
print(score) // nil

Probier es selbst

func createOptional(value: Int) -> String {
    // Schreibe hier den Code
}
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen