Krotki
Część sekcji Podstawy ścieżki Swift w Coddy. Lekcja 68 z 86.
Tablice przechowują wiele wartości tego samego typu, ale czasami trzeba pogrupować kilka powiązanych ze sobą wartości różnych typów. W takich sytuacjach przydają się krotki.
Krotka to stały zbiór wartości, które mogą mieć różne typy. Tworzysz ją, umieszczając wartości w nawiasach okrągłych i oddzielając je przecinkami:
let person = ("Alice", 25, true)
print(person) // ("Alice", 25, true)Aby uzyskać dostęp do poszczególnych wartości, użyj ich indeksu z kropką:
let coordinates = (10.5, 20.3)
print(coordinates.0) // 10.5
print(coordinates.1) // 20.3Możesz też nadać elementom nazwy, aby poprawić czytelność:
let product = (name: "Laptop", price: 999.99)
print(product.name) // Laptop
print(product.price) // 999.99Inną przydatną możliwością jest rozkładanie krotki na osobne zmienne:
let point = (3, 7)
let (x, y) = point
print(x) // 3
print(y) // 7Krotki świetnie nadają się do zwracania wielu wartości z funkcji lub grupowania niewielkich ilości powiązanych danych bez tworzenia pełnej struktury.
Wyzwanie
ŁatwyOtrzymasz trzy wiersze danych wejściowych:
- Imię (String)
- Wiek (Int)
- Wynik (Double)
Utwórz krotkę o nazwie student z nazwanymi elementami: name, age i score.
Następnie rozłóż krotkę na trzy osobne zmienne: studentName, studentAge i studentScore.
Wypisz następujące trzy wiersze:
- Imię ucznia, pobrane za pomocą nazwanego elementu
- Wiek ucznia, pobrany za pomocą indeksu (notacja kropkowa z liczbą)
- Rozłożona zmienna wyniku
Przykład: Jeśli dane wejściowe to Emma, 21 i 95.5, dane wyjściowe powinny wyglądać tak:
Emma
21
95.5Spróbuj swoich sił
// Odczytaj dane wejściowe
let name = readLine()!
let age = Int(readLine()!)!
let score = Double(readLine()!)!
// TODO: Napisz swój kod poniżej
// 1. Utwórz krotkę o nazwie 'student' z nazwanymi elementami: name, age i score
// 2. Rozłóż krotkę na trzy osobne zmienne: studentName, studentAge i studentScore
// 3. Wypisz imię ucznia, korzystając z nazwanego elementu (student.name)
// 4. Wypisz wiek ucznia, korzystając z notacji indeksowej (student.1)
// 5. Wypisz zmienną studentScore uzyskaną z rozłożenia krotki (studentScore)Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Operatory, część 1
Operatory arytmetyczneOperator moduloPrzypisanie złożonePodsumowanie — prosta matematykaOperatory porównania7Podstawowe wejście/wyjście
Funkcja printInterpolacja ciągów znakówWejście ReadLineKonwersja typówPowtórka – do 120Powtórka – prawda czy fałsz10Funkcje
Deklarowanie funkcjiParametry i argumentyWartości zwracaneEtykiety argumentówPowtórka – funkcja SigmaPowtórka – funkcja walidującaWartości domyślne2Zmienne
let vs varAdnotacje typówLiczbyŁańcuch znakówWartość logicznaKonwencje nazewnictwaPodsumowanie – inicjalizacja zmiennych5Operatory, część 2
Operatory logiczne, część 1Operatory logiczne, część 2Powtórka – prosta logikaOperatory logiczne, część 3Operator trójargumentowy8Kalkulator podziału rachunku
Wiadomość powitalnaPobieranie danych wejściowych11FizzBuzz z niespodzianką
Omówienie gryFunkcja FizzBuzz3Typy opcjonalne
Czym są typy opcjonalneRozpakowywanie za pomocą if letGuard letOperator nil-coalescingPodsumowanie — bezpieczne rozpakowywanie6Podejmowanie decyzji
Instrukcja ifIf - ElsePowtórka – prosty kalkulatorInstrukcja switchSwitch z zakresami9Pętle
Pętla for-inPętla whilePętla repeat-whileInstrukcja breakInstrukcja continuePowtórzenie – silniaZakresy w pętlachPętla zagnieżdżonaPowtórzenie – dynamiczne dane wejściowePoćwicz samodzielnie: Edytor online Swift