Pętla foreach w C#

Słownik kwalifikacji INF.04 - Projektowanie, programowanie i testowanie aplikacji

Pętla foreach w C# służy do przechodzenia po wszystkich elementach kolekcji, np. tablicy, listy lub innego obiektu, który można iterować. Jest wygodna wtedy, gdy nie trzeba znać indeksu elementu, a jedynie jego wartość.

Składnia

foreach (typ zmienna in kolekcja)
{
    // instrukcje wykonywane dla każdego elementu
}

Przykład:

string[] langs = { "C++", "C#", "Java", "Python" };

foreach (string i in langs)
{
    Console.WriteLine(i);
}

W tym kodzie:
- langs to tablica napisów,
- string i oznacza pojedynczy element tablicy w danym przebiegu pętli,
- Console.WriteLine(i) wyświetla aktualny element tablicy.

Program wypisze kolejno:

C++
C#
Java
Python

Kiedy stosować foreach?

Pętla foreach jest dobra, gdy chcemy:
- odczytać wszystkie elementy kolekcji,
- wykonać tę samą operację dla każdego elementu,
- uprościć kod w porównaniu z klasyczną pętlą for.

Różnica między foreach a for

Pętla for daje dostęp do indeksu, np. langs[0]. Pętla foreach daje bezpośrednio wartość elementu, np. i. W analizowanym przykładzie nie jest potrzebny indeks, więc foreach jest naturalnym wyborem.