Pętle for po zakresach i elementach
Iteruj po sekwencjach i parach indeksów.
Pętle for po zakresach i elementach to bezpłatna lekcja Zig 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 Zig Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Zig Academy zawiera 4 lekcji w sumie.
Iterowanie za pomocą for
Pętla for przechodzi po elementach wycinka lub tablicy, przekazując Państwu po kolei każdy element. Nie trzeba ręcznie obsługiwać indeksu. 🚶
for (names) |name| {
std.debug.print("{s}\n", .{name});
}Przechwytywanie między pionowymi kreskami
Nazwa między pionowymi kreskami jest przechwytywaną wartością. Przy każdym przebiegu zostaje powiązana z bieżącym elementem, zapewniając czyste i czytelne ciało pętli.
Przechwytywanie przez referencję
Dodaj prefiks * do przechwytywanej wartości, aby uzyskać wskaźnik do każdego elementu. Pozwala to modyfikować elementy w miejscu zamiast je kopiować.
for (scores) |*s| {
s.* += 1;
}Pobieranie indeksu
Dodaj drugą sekwencję, aby połączyć elementy z ich indeksem. Zig przechodzi po obu jednocześnie, udostępniając wartość i jej pozycję.
for (items, 0..) |item, i| {
std.debug.print("{}: {}\n", .{ i, item });
}0.. jest sekwencją indeksów
Forma 0.. tworzy indeksy odpowiadające długości elementów. Nie jest to osobna tablica, lecz licznik przechodzący w tym samym tempie.
Pętla o stałej liczbie powtórzeń
Aby powtórzyć coś określoną liczbę razy, iteruj po zakresie, takim jak 0..count. Przy każdym przebiegu przechwycona wartość zawiera bieżącą liczbę.
for (0..3) |n| {
std.debug.print("step {}\n", .{n});
}Zakresy nie obejmują końca
Zakres taki jak 0..5 zawiera 0, ale kończy się przed 5, zapewniając dokładnie pięć wartości. Taki zakres idealnie odpowiada długościom wycinków.
Iterowanie po dwóch wycinkach
Przekaż kilka wycinków, aby przechodzić po nich równolegle. Zig wymaga, aby miały tę samą długość, a następnie przy każdym przebiegu zwraca po jednym elemencie z każdego z nich.
for (keys, values) |k, v| {
put(k, v);
}Działanie break i continue
W pętli for można użyć break, aby wcześniej ją zakończyć, oraz continue, aby przejść do następnego elementu — tak samo jak w pętli while.
for jako wyrażenie
for również może zwracać wartość. break zwraca wynik, a klauzula else dostarcza wartość, jeśli pętla zakończy się bez użycia break.
const idx = for (items, 0..) |x, i| {
if (x == target) break i;
} else null;Wybór między for i while
Sięgnij po for, gdy masz sekwencję, po której chcesz przejść. Wybierz while, gdy powtarzanie zależy od warunku, a nie od kolekcji.
Szybkie sprawdzenie
Potrzebują Państwo zarówno każdego elementu, jak i jego indeksu w jednej pętli for. Który nagłówek to umożliwia?
Podsumowanie
Wykonywali już Państwo pętle for: przechwytywanie elementów, modyfikowanie przez referencję, indeksy z użyciem 0.., zakresy do zliczania, równoległe wycinki oraz formę zwracającą wartość. 🎯
Ucz się Zig dzięki korepetycjom AI — za darmo
Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.
- Kursy
- 30
- Lekcje
- 120
Często zadawane pytania
Czy lekcja „Pętle for po zakresach i elementach” jest bezpłatna?
Tak — pełny tekst „Pętle for po zakresach i elementach” 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 Zig Academy, przejdź na CoddyKit PRO. Kurs Zig Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Pętle for po zakresach i elementach”?
Iteruj po sekwencjach i parach indeksów. Ćwiczysz Zig 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ąć Zig Academy?
Nie wymagamy żadnego doświadczenia. Zig 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 „Pętle for po zakresach i elementach”?
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 Zig Academy?
Tak. Każda lekcja Zig 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
- if jako instrukcja i wyrażenie
- Pętle while i wyrażenia continue
- Pętle for po zakresach i elementach
- break, continue i pętle etykietowane