MC, 2025
Ilustracja do artykułu: Co to jest foreach w C#? Przewodnik po pętli foreach z przykładami

Co to jest foreach w C#? Przewodnik po pętli foreach z przykładami

Witaj w świecie C#! Dzisiaj przyjrzymy się jednej z najczęściej używanych pętli w języku C#, czyli pętli foreach. To narzędzie, które pozwala nam na prostą i elegancką iterację po kolekcjach danych. Jeśli kiedykolwiek miałeś problem z iterowaniem po tablicach lub listach, to z pewnością pętla foreach będzie dla Ciebie wyborem numer jeden. W tym artykule dowiesz się, jak działa foreach w C# oraz poznasz jego praktyczne zastosowanie na przykładach. Zapraszam do lektury!

Czym jest pętla foreach w C#?

Pętla foreach jest jednym z podstawowych elementów w C#. Służy do iterowania po elementach kolekcji, takich jak tablice, listy, słowniki czy zbiory. Jej główną zaletą jest to, że jest niezwykle prosta w użyciu i pomaga uniknąć wielu problemów związanych z ręcznym zarządzaniem indeksami, co jest typowe w tradycyjnych pętlach for. Pętla foreach automatycznie przechodzi przez wszystkie elementy kolekcji i wykonuje określoną operację na każdym z nich. Dzięki temu kod staje się bardziej czytelny i zwięzły.

Podstawowa składnia pętli foreach

Składnia pętli foreach w C# jest bardzo prosta. Oto jej podstawowa forma:

foreach (typ element in kolekcja)
{
    // Kod do wykonania dla każdego elementu
}

W powyższym przykładzie:

  • typ – to typ danych elementów, po których będziemy iterować (np. int, string, itp.),
  • element – zmienna, która przechowuje aktualny element w kolekcji,
  • kolekcja – to kolekcja (np. tablica, lista), po której iterujemy.

Warto zauważyć, że pętla foreach pozwala na odczyt elementów kolekcji, ale nie umożliwia ich modyfikowania w trakcie iteracji. Jeśli chcesz modyfikować elementy kolekcji, powinieneś użyć innych pętli, np. for.

Przykład 1: Iteracja po tablicy w C#

Zacznijmy od podstawowego przykładu, czyli iterowania po tablicy liczb całkowitych:

int[] liczby = {1, 2, 3, 4, 5};

foreach (int liczba in liczby)
{
    Console.WriteLine(liczba);
}

W tym przykładzie mamy tablicę liczby, po której iterujemy. Pętla foreach przechodzi przez każdy element tablicy, przypisuje go do zmiennej liczba i wykonuje operację Console.WriteLine, która wypisuje element na ekranie. Wynik tego kodu to:

1
2
3
4
5

Przykład 2: Iteracja po liście w C#

Teraz przejdźmy do iterowania po liście. Lista to bardziej elastyczna kolekcja niż tablica, ponieważ możemy dodawać i usuwać z niej elementy w dowolnym momencie. Poniżej przykład:

List owoce = new List { "Jabłko", "Banan", "Pomarańcza", "Truskawka" };

foreach (string owoc in owoce)
{
    Console.WriteLine(owoc);
}

W tym przykładzie lista owoce zawiera cztery elementy typu string. Pętla foreach iteruje po tej liście, a każdy element jest wyświetlany na ekranie. Wynik to:

Jabłko
Banan
Pomarańcza
Truskawka

Przykład 3: Iteracja po słowniku w C#

Słownik (Dictionary) to kolekcja, w której każdy element jest parą klucz-wartość. Pętla foreach może być również używana do iteracji po słowniku. Oto przykład:

Dictionary slownik = new Dictionary
{
    { 1, "Jeden" },
    { 2, "Dwa" },
    { 3, "Trzy" }
};

foreach (KeyValuePair para in slownik)
{
    Console.WriteLine($"Klucz: {para.Key}, Wartość: {para.Value}");
}

W tym przykładzie iterujemy po słowniku, a każda para klucz-wartość jest przypisywana do zmiennej para. Dzięki temu możemy uzyskać zarówno klucz, jak i wartość i wyświetlić je na ekranie. Wynik to:

Klucz: 1, Wartość: Jeden
Klucz: 2, Wartość: Dwa
Klucz: 3, Wartość: Trzy

Przykład 4: Iteracja po tablicy z użyciem indeksu

Choć pętla foreach nie daje bezpośredniego dostępu do indeksu elementu, czasami warto go znać. Możemy jednak łatwo uzyskać indeks, łącząc foreach z dodatkową zmienną. Oto przykład:

int[] liczby = { 10, 20, 30, 40, 50 };
int indeks = 0;

foreach (int liczba in liczby)
{
    Console.WriteLine($"Indeks: {indeks}, Wartość: {liczba}");
    indeks++;
}

W tym przypadku ręcznie zwiększamy zmienną indeks w każdej iteracji, aby uzyskać numer indeksu dla każdego elementu. Wynik to:

Indeks: 0, Wartość: 10
Indeks: 1, Wartość: 20
Indeks: 2, Wartość: 30
Indeks: 3, Wartość: 40
Indeks: 4, Wartość: 50

Przykład 5: Używanie foreach w metodzie

Pętla foreach może być również używana w metodach. Poniżej znajdziesz przykład, który pokazuje, jak można przekazać kolekcję do metody, a następnie iterować po niej:

public void WypiszElementy(List lista)
{
    foreach (string element in lista)
    {
        Console.WriteLine(element);
    }
}

List listaOwoce = new List { "Jabłko", "Banan", "Pomarańcza" };
WypiszElementy(listaOwoce);

W tym przykładzie przekazujemy listę owoce do metody WypiszElementy, która wykonuje operację wypisywania każdego elementu z listy. Wynik to:

Jabłko
Banan
Pomarańcza

Podsumowanie

Pętla foreach w C# jest prostym, ale potężnym narzędziem, które pozwala na łatwą iterację po kolekcjach danych. Dzięki niej można zaoszczędzić czas, unikając konieczności zarządzania indeksami i ręcznego iterowania po elementach. W tym artykule pokazaliśmy Ci, jak używać pętli foreach w różnych scenariuszach: przy iteracji po tablicach, listach, słownikach oraz w metodach. Mam nadzieję, że teraz czujesz się bardziej komfortowo w pracy z pętlą foreach i będziesz mógł wykorzystać jej potencjał w swoich projektach!

Komentarze (0) - Nikt jeszcze nie komentował - bądź pierwszy!

Imię:
Treść: