Tworzenie krotek
Połączy Pan/Pani powiązane wartości.
Tworzenie krotek to bezpłatna lekcja Scala for Backend Engineering & Functional Programming 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 Scala for Backend Engineering & Functional Programming, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Scala for Backend Engineering & Functional Programming zawiera 4 lekcji w sumie.
Czym jest krotka?
Krotka grupuje stałą liczbę wartości, nawet jeśli mają one różne typy.
W przeciwieństwie do listy, której wszystkie elementy mają jeden wspólny typ, krotka może jednocześnie zawierać Int, String i Boolean.
Krotki świetnie nadają się do zwracania lub grupowania kilku powiązanych wartości bez konieczności tworzenia całej klasy.
Tworzenie pierwszej krotki
Krotkę tworzy się, umieszczając wartości oddzielone przecinkami w nawiasach.
W tym przykładzie łączymy imię z wiekiem. Scala automatycznie rozpoznaje typy.
val person = ("Alice", 30)
println(person)Swobodne łączenie typów
Jedną z największych zalet krotek jest możliwość łączenia różnych typów w jednej wartości.
Ta krotka zawiera razem String, Int i Boolean. Każda pozycja zachowuje własny typ.
val record = ("Bob", 42, true)
println(record)Typy krotek
Typ krotki przedstawia po kolei typy wszystkich jej elementów.
Para złożona z String i Int ma typ (String, Int). W razie potrzeby można jawnie zapisać ten typ, aby kod był bardziej zrozumiały.
val pair: (String, Int) = ("Cara", 25)
println(pair)Pary są często używane
Krotka zawierająca dokładnie dwa elementy nazywa się parą, a pary występują w Scali niemal wszędzie.
Na przykład mapy są tworzone z par klucz–wartość. Poznanie par ułatwia dalszą naukę języka.
val score = ("Math", 95)
println(score)Składnia strzałkowa dla par
W przypadku krotek dwuelementowych Scala oferuje wygodną składnię strzałkową.
Zapis key -> value jest dokładnie równoważny zapisowi (key, value). Jest czytelny, szczególnie podczas tworzenia map.
val entry = "name" -> "Dana"
println(entry)Większe krotki
Krotki mogą zawierać więcej niż dwie lub trzy wartości.
Scala obsługuje krotki liczące do 22 elementów, choć małe krotki są łatwiejsze do odczytania. Jeśli potrzebujesz wielu pól, zwykle czytelniejsza będzie klasa case.
val data = (1, 2, 3, 4, 5)
println(data)Uwaga dotycząca jednego elementu
Krotka jednoelementowa nie ma praktycznego zastosowania. Umieszczenie jednej wartości w nawiasach po prostu zwraca tę wartość.
Dlatego (5) to po prostu liczba 5, a nie krotka. Krotki zaczynają się od dwóch elementów.
val notATuple = (5)
println(notATuple)Krotki są niemutowalne
Po utworzeniu krotki jej wartości już się nie zmieniają.
Niemutowalność sprawia, że krotki można bezpiecznie współdzielić i łatwo analizować. Aby uzyskać inną krotkę, wystarczy utworzyć nową.
val a = (1, "one")
val b = (2, "two")
println(a)
println(b)Zwracanie wielu wartości
Częstym zastosowaniem krotek jest jednoczesne zwracanie kilku wartości przez funkcję.
W tym przykładzie funkcja zwraca sumę i iloczyn jako jedną krotkę, dzięki czemu nie trzeba tworzyć osobnej klasy.
def stats(a: Int, b: Int) = (a + b, a * b)
println(stats(3, 4))Zagnieżdżanie krotek
Ponieważ krotka jest po prostu wartością, można umieścić jedną krotkę w innej.
Pozwala to grupować powiązane podpary. Warto jednak unikać zbyt głębokiego zagnieżdżania, aby kod pozostał czytelny.
val nested = (("x", 1), ("y", 2))
println(nested)Szybkie sprawdzenie
Sprawdź, czego nauczyłeś się o tworzeniu krotek.
Podsumowanie
Nauczyłeś się, że krotki grupują w nawiasach stałą liczbę wartości, które mogą mieć różne typy.
W parach można również używać składni key -> value. Krotki są niemutowalne i świetnie nadają się do zwracania wielu wartości. Następnie nauczysz się odczytywać te wartości.
Często zadawane pytania
Czy lekcja „Tworzenie krotek” jest bezpłatna?
Tak — pełny tekst „Tworzenie krotek” 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 Scala for Backend Engineering & Functional Programming, przejdź na CoddyKit PRO. Kurs Scala for Backend Engineering & Functional Programming zawiera 4 lekcji w sumie.
Co nauczysz się w „Tworzenie krotek”?
Połączy Pan/Pani powiązane wartości. Ćwiczysz Scala for Backend Engineering & Functional Programming 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ąć Scala for Backend Engineering & Functional Programming?
Nie wymagamy żadnego doświadczenia. Scala for Backend Engineering & Functional Programming 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 „Tworzenie krotek”?
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 Scala for Backend Engineering & Functional Programming?
Tak. Każda lekcja Scala for Backend Engineering & Functional Programming 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
- Tworzenie krotek
- Destrukturyzacja krotek
- Budowanie zakresów
- Zakresy w pętlach