Iterowanie po tablicach
for i foreach.
Iterowanie po tablicach to bezpłatna lekcja C# 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 C# Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs C# Academy zawiera 4 lekcji w sumie.
Po co używać pętli?
Tablice często przechowują wiele wartości, a ręczne wpisywanie każdego indeksu rzadko jest dobrym rozwiązaniem. Pętla automatycznie powtarza działanie dla każdego elementu.
Dzięki temu można za pomocą zaledwie kilku wierszy wyświetlić wszystkie wartości, obliczyć ich sumę lub je sprawdzić.
Pętla for
Pętla for korzysta z licznika. Należy rozpocząć go od 0 i kontynuować działanie, dopóki licznik jest mniejszy niż Length, zwiększając go za każdym razem o jeden.
Licznik pełni jednocześnie funkcję indeksu, dzięki czemu można uzyskać dostęp do każdego elementu.
int[] nums = { 10, 20, 30 };
for (int i = 0; i < nums.Length; i++)
{
Console.WriteLine(nums[i]);
}Kompletny program z pętlą for
Ten kompletny program przechodzi przez tablicę kolorów i wyświetla każdy z nich w osobnym wierszu.
Proszę go uruchomić i zwrócić uwagę, jak ten sam wiersz kodu obsługuje każdy element.
string[] colors = { "red", "green", "blue" };
for (int i = 0; i < colors.Length; i++)
{
Console.WriteLine(colors[i]);
}Pętla foreach
Gdy potrzebne są tylko wartości, a nie indeks, pętla foreach jest prostszym rozwiązaniem. Przekazuje ona kolejno każdy element.
Nie trzeba zarządzać licznikiem, co oznacza mniej okazji do popełnienia błędu.
string[] colors = { "red", "green", "blue" };
foreach (string c in colors)
{
Console.WriteLine(c);
}foreach z var
W pętli foreach można użyć var, aby C# sam określił typ elementu.
Dzięki temu pętla jest krótsza, a kod nadal zachowuje bezpieczeństwo typów.
int[] nums = { 1, 2, 3 };
foreach (var n in nums)
{
Console.WriteLine(n * 2);
}for a foreach
Użyj for, gdy potrzebujesz indeksu, chcesz pomijać elementy albo musisz modyfikować tablicę. Użyj foreach, gdy chcesz po prostu odczytać każdą wartość.
Nie można zmienić zmiennej sterującej pętli foreach tak, aby zapisać wartość z powrotem do tablicy — w tym celu należy użyć for.
int[] nums = { 1, 2, 3 };
for (int i = 0; i < nums.Length; i++)
{
nums[i] = nums[i] + 1; // updates the array
}
Console.WriteLine(nums[0]); // 2Sumowanie elementów
Typowym zadaniem jest dodanie wszystkich wartości. Należy przechowywać bieżącą sumę i dodawać do niej każdy element wewnątrz pętli.
Ten schemat sprawdza się przy obliczaniu liczności, sum i średnich.
int[] nums = { 4, 8, 15 };
int total = 0;
foreach (int n in nums)
{
total += n;
}
Console.WriteLine(total); // 27Znajdowanie wartości maksymalnej
Aby znaleźć największą wartość, należy przyjąć na początku, że pierwszy element jest maksimum, a następnie porównać z nim wszystkie pozostałe elementy.
Za każdym razem, gdy znajdzie się większą wartość, należy zaktualizować maksimum.
int[] nums = { 3, 9, 2, 7 };
int max = nums[0];
foreach (int n in nums)
{
if (n > max) max = n;
}
Console.WriteLine(max); // 9Wyszukiwanie wartości
Można przejść w pętli przez elementy, aby sprawdzić, czy dana wartość istnieje. Gdy zostanie znalezione dopasowanie, należy natychmiast przerwać pętlę, aby nie wykonywać niepotrzebnej pracy.
Zmienna flagowa zapamiętuje, czy element został znaleziony.
string[] names = { "Ana", "Bo", "Cy" };
bool found = false;
foreach (string n in names)
{
if (n == "Bo") { found = true; break; }
}
Console.WriteLine(found); // TrueWyświetlanie indeksu
Czasami warto wyświetlić również pozycję elementu. Pętla for udostępnia indeks razem z wartością.
Jest to świetne rozwiązanie w przypadku list numerowanych.
string[] tasks = { "Wake", "Eat", "Code" };
for (int i = 0; i < tasks.Length; i++)
{
Console.WriteLine((i + 1) + ". " + tasks[i]);
}Przechodzenie przez zakres
Nie trzeba przechodzić przez całą tablicę. Można zmienić początek lub koniec pętli for, aby odwiedzić tylko jej część.
W tym przykładzie pomijamy pierwszy element, rozpoczynając od indeksu 1.
int[] nums = { 10, 20, 30, 40 };
for (int i = 1; i < nums.Length; i++)
{
Console.WriteLine(nums[i]); // 20, 30, 40
}Szybkie sprawdzenie
Sprawdź swoją wiedzę o pętlach.
Podsumowanie
Nauczyłeś się przechodzić po tablicach za pomocą for (licznik i indeks) oraz foreach (bezpośredni dostęp do każdej wartości).
Używaj for, gdy potrzebujesz indeksu lub chcesz modyfikować elementy, a foreach — podczas prostego odczytu. Nauczyłeś się również sumować elementy, wyszukiwać wartości i znajdować maksimum. Następnie zajmiesz się siatkami za pomocą tablic wielowymiarowych.
Często zadawane pytania
Czy lekcja „Iterowanie po tablicach” jest bezpłatna?
Tak — pełny tekst „Iterowanie po tablicach” 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 C# Academy, przejdź na CoddyKit PRO. Kurs C# Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Iterowanie po tablicach”?
for i foreach. Ćwiczysz C# 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ąć C# Academy?
Nie wymagamy żadnego doświadczenia. C# 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 „Iterowanie po tablicach”?
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 C# Academy?
Tak. Każda lekcja C# 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
- Deklarowanie tablic
- Indeksowanie i długość
- Iterowanie po tablicach
- Tablice wielowymiarowe