0Pricing
Swift Academy · Lektion

Zugeordnete Werte für umfangreiche Daten

Versehen Sie Fälle mit Nutzdaten und extrahieren Sie diese per Pattern Matching.

Zugeordnete Werte für umfangreiche Daten ist eine kostenlose Swift Academy-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Swift Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Swift Academy-Kurs umfasst insgesamt 4 Lektionen.

Willkommen

Assoziierte Werte ermöglichen es jedem Enum-Case, zusätzliche Daten zu enthalten. Dadurch werden Enums zu leistungsfähigen getaggten Vereinigungen — der Grundlage für eine typsichere Modellierung von Zuständen in Swift.

Assoziierte Werte definieren

```swift enum Barcode { case upc(Int, Int, Int, Int) case qrCode(String) } let product = Barcode.upc(8,85909,51226,3) let web = Barcode.qrCode("https://example.com") ```

Mit switch extrahieren

```swift switch barcode { case .upc(let n, let m, let p, let c): print("UPC: \(n)-\(m)-\(p)-\(c)") case .qrCode(let code): print("QR: \(code)") } ``` Oder verwenden Sie `case let`, um alle Werte auf einmal zu binden: ```swift case let .upc(n,m,p,c): ... ```

Benannte assoziierte Werte

```swift enum NetworkResult { case success(statusCode: Int, data: Data) case failure(error: Error) } if case .success(let code, let data) = result { ... } ``` Bezeichnungen machen den Bindungskontext eindeutig.

Assoziierte Werte im Vergleich zu Rohwerten

• Rohwerte: Konstanten zur Compilezeit, alle Cases vom selben Typ, Eigenschaft `rawValue` • Assoziierte Werte: Laufzeitdaten, jeder Case hat seinen eigenen Typ, über Pattern Matching extrahiert Sie können nicht beide im selben Enum verwenden.

Optionals als Enums

Swifts `Optional` ist wörtlich: ```swift enum Optional { case some(Wrapped) case none } ``` Jedes `if let`, `switch` und `??` arbeitet mit demselben Mechanismus.

Result<Success, Failure>

```swift func fetch() -> Result { ... } switch fetch() { case .success(let data): process(data) case .failure(let err): print(err) } ``` `Result` ist ein Enum der Standardbibliothek mit zwei Cases, die assoziierte Werte enthalten.

Pattern Matching mit if case

```swift let item = Barcode.qrCode("hello") if case .qrCode(let code) = item { print("QR code: \(code)") } ``` `if case` ist kompakt, wenn Sie nur an einem Case interessiert sind.

Guard Case

```swift func process(_ result: NetworkResult) { guard case .success(_, let data) = result else { return } handle(data) } ``` `guard case` beendet die Ausführung frühzeitig, wenn das Muster nicht übereinstimmt.

Enums in Collections

```swift let events: [AppEvent] = [.login("alice"), .pageView("/home"), .logout] let logins = events.compactMap { if case .login(let u) = $0 { return u } else { return nil } } ```

Kurztest

Welches Schlüsselwort wird verwendet, um assoziierte Werte innerhalb eines switch-Case zu extrahieren?

Zusammenfassung

Die wichtigsten Erkenntnisse: • Assoziierte Werte fügen einzelnen Cases Daten hinzu • Extrahieren Sie sie mit `switch`, `if case` oder `guard case` • Verwenden Sie benannte Bezeichnungen für mehr Klarheit: `.success(code: Int, data: Data)` • `Optional` und `Result` sind Enums der Standardbibliothek mit assoziierten Werten • Assoziierte Werte und Rohwerte können nicht im selben Enum kombiniert werden Als Nächstes: indirekte Enums und rekursive Strukturen.

Häufig gestellte Fragen

Ist die Lektion „Zugeordnete Werte für umfangreiche Daten“ kostenlos?

Ja — der vollständige Text von „Zugeordnete Werte für umfangreiche Daten“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Swift Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Swift Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Zugeordnete Werte für umfangreiche Daten“?

Versehen Sie Fälle mit Nutzdaten und extrahieren Sie diese per Pattern Matching. Du übst Swift Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Swift Academy zu starten?

Keine Vorkenntnisse erforderlich. Swift Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.

Wie lange dauert die Lektion „Zugeordnete Werte für umfangreiche Daten“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Swift Academy-Lektion Code schreiben und ausführen?

Ja. Jede Swift Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Rohwerte und CaseIterable
  2. Zugeordnete Werte für umfangreiche Daten
  3. Indirekte Enums und rekursive Strukturen
  4. Zustandsautomaten mit Enums modellieren
← Zurück zu Swift Academy