0Pricing
Swift Academy · Lekcja

Wiązanie wartości i klauzule where

Wiązanie dopasowanych wartości i dodawanie dodatkowych warunków.

Wiązanie wartości i klauzule where to bezpłatna lekcja Swift Academy na CoddyKit. To lekcja 3 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.

Wiązanie w przypadku

Przypadek switch może powiązać dopasowaną wartość ze stałą za pomocą case let x, dzięki czemu wartość jest dostępna wewnątrz tego przypadku.

let value = 42
switch value {
case let n:
    print("The number is \(n)")
}

Wiązanie części krotki

Można powiązać tylko potrzebne części krotki, używając let na wybranych pozycjach.

let point = (3, 7)
switch point {
case (let x, 0):
    print("On x-axis at \(x)")
case (0, let y):
    print("On y-axis at \(y)")
case let (x, y):
    print("At \(x), \(y)")
}

Klauzula where

Do przypadku można dodać klauzulę where, aby zastosować dodatkowy warunek logiczny do powiązanej wartości. Przypadek zostanie dopasowany tylko wtedy, gdy spełniony jest zarówno wzorzec, jak i warunek.

let number = 8
switch number {
case let n where n % 2 == 0:
    print("\(n) is even")
case let n:
    print("\(n) is odd")
}

where dla zakresów

Wzorzec zakresu można połączyć z klauzulą where, aby uzyskać dokładniejszą kontrolę.

let score = 95
switch score {
case 90...100 where score == 100:
    print("Perfect")
case 90...100:
    print("Excellent")
default:
    print("Keep trying")
}

where z krotkami

Klauzula where może porównywać powiązane elementy krotki ze sobą.

let point = (4, 4)
switch point {
case let (x, y) where x == y:
    print("On the diagonal")
case let (x, y):
    print("Off diagonal at \(x), \(y)")
}

Wiele warunków where

Warunek po where może być dowolnym wyrażeniem logicznym, w tym wyrażeniem zawierającym && i ||.

let n = 15
switch n {
case let x where x > 10 && x < 20:
    print("In the teens-ish range")
default:
    print("Outside range")
}

Kolejność z where

Przypadek z klauzulą where pasuje tylko wtedy, gdy warunek jest prawdziwy; w przeciwnym razie Swift przechodzi do następnego przypadku.

let temp = 5
switch temp {
case let t where t < 0:
    print("Freezing")
case let t where t < 10:
    print("Cold")
default:
    print("Mild or warm")
}

Wiązanie w przypadkach zakresów

Można powiązać wartość i jednocześnie ograniczyć ją do zakresu za pomocą where.

let age = 67
switch age {
case let a where a >= 65:
    print("Senior, age \(a)")
case let a where a >= 18:
    print("Adult, age \(a)")
default:
    print("Minor")
}

Klasyfikowanie z wiązaniami

Połączenie wiązania i where pozwala jednej instrukcji switch zarówno sklasyfikować wartość, jak i ją wyświetlić.

let balance = -50
switch balance {
case let b where b < 0:
    print("Overdrawn by \(-b)")
case 0:
    print("Empty")
case let b:
    print("Balance: \(b)")
}

Dlaczego wiązania pomagają

Bez wiązania trzeba byłoby ponownie odwoływać się do pierwotnej zmiennej. Wiązanie zapewnia czytelną nazwę lokalną i naturalnie łączy się z filtrami where.

let input = 21
switch input {
case let n where n.isMultiple(of: 3):
    print("\(n) is divisible by 3")
default:
    print("Not divisible by 3")
}

Wiązanie przechwytujące wszystko

Końcowy przypadek case let x bez warunku działa jak default, a jednocześnie udostępnia wartość.

let code = 17
switch code {
case 0:
    print("zero")
case let other:
    print("non-zero: \(other)")
}

Szybkie sprawdzenie

Proszę przetestować wiązanie wartości i where.

Podsumowanie: wiązanie wartości i klauzule where

Za pomocą case let x można powiązać dopasowaną wartość, a za pomocą where zastosować dodatkowy warunek. Razem pozwalają jednej instrukcji switch sklasyfikować wartości i użyć ich w tym samym przypadku.

let n = 6
switch n {
case let x where x > 0: print("positive \(x)")
default: print("non-positive")
}

Często zadawane pytania

Czy lekcja „Wiązanie wartości i klauzule where” jest bezpłatna?

Tak — pełny tekst „Wiązanie wartości i klauzule where” 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 „Wiązanie wartości i klauzule where”?

Wiązanie dopasowanych wartości i dodawanie dodatkowych warunków. Ć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 3 z 4.

Ile czasu zajmuje lekcja „Wiązanie wartości i klauzule where”?

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. Wyczerpujący switch dla wartości
  2. Dopasowywanie zakresów i krotek
  3. Wiązanie wartości i klauzule where
  4. Złożone przypadki i fallthrough
← Powrót do Swift Academy