0Pricing
Scala for Backend Engineering & Functional Programming · Lekcja

Budowanie zakresów

Wygeneruje Pan/Pani sekwencje liczb.

Budowanie zakresów to bezpłatna lekcja Scala for Backend Engineering & Functional Programming 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 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 zakres?

Zakres przedstawia uporządkowaną sekwencję liczb całkowitych rozmieszczonych w równych odstępach, na przykład 1, 2, 3, 4, 5.

Zakresy oszczędzają pamięć, ponieważ przechowują tylko początek, koniec i krok, a nie każdą liczbę. Idealnie nadają się do zliczania i iterowania.

Słowo kluczowe to

Najprostszy zakres tworzy się za pomocą to, które obejmuje oba końce.

Dlatego 1 to 5 obejmuje 1, 2, 3, 4 i 5. Ostatnia liczba należy do zakresu.

val r = 1 to 5
println(r)

Zakresy domknięte

Zakres utworzony za pomocą to nazywa się domkniętym, ponieważ zawiera górną granicę.

Aby zobaczyć rzeczywiste liczby zamiast zwartego opisu, można przekształcić zakres w listę.

val r = 1 to 5
println(r.toList)

Słowo kluczowe until

Użyj until, gdy chcesz zakończyć zakres tuż przed górną granicą.

Dlatego 1 until 5 daje 1, 2, 3 i 4, pomijając 5. Wartość końcowa nie należy do zakresu.

val r = 1 until 5
println(r.toList)

to a until

Różnica dotyczy tylko ostatniej liczby. to obejmuje koniec, a until go wyklucza.

1 to 5 ma pięć elementów, natomiast 1 until 5 ma ich cztery. Wybór właściwego operatora pozwala uniknąć błędów o jeden element.

println((1 to 5).toList)
println((1 until 5).toList)

Zmiana kroku za pomocą by

Domyślnie zakres zwiększa się o jeden. Dodaj by, aby zmienić wielkość kroku.

W tym przykładzie zliczamy od 0 do 10, przeskakując co 2 i otrzymując liczby parzyste.

val evens = 0 to 10 by 2
println(evens.toList)

Odliczanie w dół

Ujemny krok pozwala zakresowi odliczać wstecz.

Przy użyciu by -1 zakres zaczyna się od większej wartości i maleje. To standardowy sposób iterowania w odwrotnej kolejności.

val down = 5 to 1 by -1
println(down.toList)

Rozmiar zakresu

Za pomocą size można sprawdzić, ile elementów zawiera zakres.

Wartość ta jest obliczana natychmiast na podstawie granic i kroku, bez wyliczania każdej liczby.

val r = 0 to 20 by 5
println(r.size)

Sprawdzanie przynależności

Metoda contains informuje, czy dana wartość należy do zakresu.

Uwzględnia również krok, więc 3 nie należy do zakresu liczb parzystych o kroku 2.

val evens = 0 to 10 by 2
println(evens.contains(4))
println(evens.contains(3))

Zakresy są kolekcjami

Zakres zachowuje się jak każda inna sekwencja, więc można go mapować lub sumować.

W tym przykładzie podnosimy każdą liczbę do kwadratu i dodajemy wyniki, nie tworząc wcześniej jawnej listy.

val total = (1 to 4).map(n => n * n).sum
println(total)

Puste zakresy

Jeśli początek znajduje się już za końcem, zakres jest po prostu pusty.

Na przykład 5 until 5 nie zawiera żadnych elementów. Puste zakresy są poprawne i podczas iterowania nie generują żadnych elementów.

val r = 5 until 5
println(r.isEmpty)

Szybkie sprawdzenie

Sprawdź, czego nauczyłeś się o tworzeniu zakresów.

Podsumowanie

Zakresy tworzysz za pomocą to (domkniętego) i until (otwartego), zmieniasz krok za pomocą by, a za pomocą ujemnego kroku możesz odliczać w dół.

Zakresy to lekkie kolekcje obsługujące size, contains i map. Następnie użyjesz ich do sterowania pętlami.

Często zadawane pytania

Czy lekcja „Budowanie zakresów” jest bezpłatna?

Tak — pełny tekst „Budowanie zakresów” 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 „Budowanie zakresów”?

Wygeneruje Pan/Pani sekwencje liczb. Ć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 3 z 4.

Ile czasu zajmuje lekcja „Budowanie zakresów”?

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

  1. Tworzenie krotek
  2. Destrukturyzacja krotek
  3. Budowanie zakresów
  4. Zakresy w pętlach
← Powrót do Scala for Backend Engineering & Functional Programming