0Pricing
Swift Academy · Lekcja

Wartości surowe i CaseIterable

En lässt?

Wartości surowe i CaseIterable to bezpłatna lekcja Swift Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Swift Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Swift Academy zawiera 4 lekcji w sumie.

Wprowadzenie

Enumy Swift mogą mieć *wartości surowe* — wartości literalne przechowywane przy każdym przypadku. Zgodność z `CaseIterable` zapewnia automatyczny dostęp do kolekcji wszystkich przypadków.

Wyliczenia z wartościami surowymi

```swift enum Direction: String { case north = "N" case south = "S" case east = "E" case west = "W" } print(Direction.north.rawValue) // "N" ```

Automatycznie zwiększane wartości surowe typu Int

```swift enum Planet: Int { case mercury = 1 case venus // 2 (auto) case earth // 3 case mars // 4 } print(Planet.earth.rawValue) // 3 ```

Automatycznie nazywane wartości surowe String

```swift enum Color: String { case red, green, blue } print(Color.blue.rawValue) // "blue" — auto-named ``` W przypadku wartości surowych typu String, jeśli pominiesz przypisanie, wartość surowa będzie taka sama jak nazwa przypadku.

init?(rawValue:) — failable

```swift if let dir = Direction(rawValue: "N") { print(dir) // Direction.north } let invalid = Direction(rawValue: "X") // nil ``` Automatycznie wygenerowany failable init zwraca nil dla nierozpoznanych wartości surowych.

CaseIterable

```swift enum Season: CaseIterable { case spring, summer, autumn, winter } print(Season.allCases) // [.spring,.summer,.autumn,.winter] print(Season.allCases.count) // 4 ```

Iterowanie po wszystkich przypadkach

```swift for season in Season.allCases { print(season) } let picker = Season.allCases.map { "\($0)".capitalized } ```

CaseIterable z wartościami surowymi

```swift enum Suit: String, CaseIterable { case hearts="♥", diamonds="♦", clubs="♣", spades="♠" } print(Suit.allCases.map { $0.rawValue }) // ["♥","♦","♣","♠"] ```

Wartości surowe dla Codable

Enumy z wartościami surowymi typu String bezproblemowo współpracują z `Codable`: ```swift enum Status: String, Codable { case active, inactive, pending } struct User: Codable { var status: Status } // JSON "active" decodes to .active automatically ```

Wartości surowe dla masek bitowych flag

```swift struct Permission: OptionSet { let rawValue: Int static let read = Permission(rawValue: 1 << 0) static let write = Permission(rawValue: 1 << 1) static let execute = Permission(rawValue: 1 << 2) } var p: Permission = [.read, .write] print(p.contains(.read)) // true ```

Szybkie sprawdzenie

Który protokół udostępnia wszystkie przypadki enumu za pośrednictwem `allCases`?

Podsumowanie

Najważniejsze informacje: • Wartości surowe: `enum E: String { case a = "x" }` • Wartości surowe typu Int są automatycznie zwiększane; wartości surowe typu String domyślnie odpowiadają nazwie przypadku • `init?(rawValue:)` jest generowany automatycznie i może zakończyć się niepowodzeniem • `CaseIterable` udostępnia statyczną właściwość `.allCases` • Połącz `String, CaseIterable`, aby tworzyć menu i selektory Dalej: wartości skojarzone.

Często zadawane pytania

Czy lekcja „Wartości surowe i CaseIterable” jest bezpłatna?

Tak — pełny tekst „Wartości surowe i CaseIterable” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Swift Academy, przejdź na CoddyKit PRO. Kurs Swift Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Wartości surowe i CaseIterable”?

En lässt? Ćwiczysz Swift Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Swift Academy?

Nie wymagamy żadnego doświadczenia. Swift Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.

Ile czasu zajmuje lekcja „Wartości surowe i CaseIterable”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Swift Academy?

Tak. Każda lekcja Swift Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Wartości surowe i CaseIterable
  2. Wartości powiązane dla bogatych danych
  3. Wyliczenia indirect i struktury rekurencyjne
  4. Modelowanie automatów stanów za pomocą wyliczeń
← Powrót do Swift Academy