Zanka C # foreach (z primeri)

V tem članku bomo spoznali zanke foreach (alternativa zanki for) in kako jih uporabiti z nizi in zbirkami.

C # ponuja enostavno uporabo in bolj berljivo alternativo zanki forach, zanki foreach pri delu z nizi in zbirkami za iteracijo po elementih nizov / zbirk. Zanka foreach ponavlja vsako postavko, zato se imenuje foreach zanka.

Preden se premaknete naprej z zanko foreach, obiščite:

  • C # za zanko
  • Polja C #
  • Zbirke C #

Sintaksa zanke foreach

 foreach (element v iterable-elementu) (// telo zanke foreach) 

Tu je iterable-item lahko matrika ali razred zbirke.

Kako deluje zanka foreach?

Ključna inbeseda, uporabljena skupaj z zanko foreach, se uporablja za iteracijo po iterable-elementu. Ključna beseda in izbere element iz iterable-elementa na vsaki ponovitvi in ​​ga shrani v element spremenljivke.

Pri prvi ponovitvi se prvi element iterable-elementa shrani v elementu. Pri drugi ponovitvi je izbran drugi element itd.

Število izvedb zanke foreach je enako številu elementov v matriki ali zbirki.

Tu je primer ponovitve skozi matriko z uporabo zanke for:

Primer 1: Tiskanje matrike z uporabo zanke for

 using System; namespace Loop ( class ForLoop ( public static void Main(string() args) ( char() myArray = ('H','e','l','l','o'); for(int i = 0; i < myArray.Length; i++) ( Console.WriteLine(myArray(i)); ) ) ) ) 

Isto nalogo lahko opravimo s pomočjo foreach zanke.

Primer 2: Tiskanje matrike z uporabo zanke foreach

 using System; namespace Loop ( class ForEachLoop ( public static void Main(string() args) ( char() myArray = ('H','e','l','l','o'); foreach(char ch in myArray) ( Console.WriteLine(ch); ) ) ) ) 

Ko zaženemo oba programa, bo rezultat:

 Zdravo 

V zgornjem programu se zanka foreach ponovi nad matriko, myArray. Pri prvi ponovitvi je prvi element, tj. MyArray (0), izbran in shranjen v pogl.

Podobno na zadnji ponovitvi je izbran zadnji element, tj. MyArray (4). V telesu zanke je natisnjena vrednost ch.

Ko pogledamo oba programa, je program, ki uporablja zanko foreach, bolj berljiv in enostaven za razumevanje. To je zaradi preproste in izrazne skladnje.

Zato ima zanka foreach prednost pri zanki pri delu z nizi in zbirkami.

Primer 3: Prehod po vrsti spolov z uporabo zanke foreach

Ta program izračuna število kandidatov in kandidatk.

 using System; namespace Loop ( class ForEachLoop ( public static void Main(string() args) ( char() gender = ('m','f','m','m','m','f','f','m','m','f'); int male = 0, female = 0; foreach (char g in gender) ( if (g == 'm') male++; else if (g =='f') female++; ) Console.WriteLine("Number of male = (0)", male); Console.WriteLine("Number of female = (0)", female); ) ) ) 

Ko zaženemo program, bo rezultat:

 Število moških = 6 Število samic = 4 

Primer 4: zanka foreach s seznamom (zbirka)

Ta program izračuna vsoto elementov na seznamu.

 using System; using System.Collections.Generic; namespace Loop ( class ForEachLoop ( public static void Main(string() args) ( var numbers = new List() (5,-8,3,14,9,17,0,4); int sum = 0; foreach(int number in numbers) ( sum += number; ) Console.WriteLine("Sum = (0)", sum); ) ) ) 

Ko zaženemo program, bo rezultat:

 Vsota = 44

V tem programu se zanka foreach uporablja za prehod skozi zbirko. Prehod po zbirki je podoben prehodu skozi matriko.

Prvi element zbirke je izbran na prvi ponovitvi, drugi element na drugi ponovitvi in ​​tako naprej do zadnjega elementa.

Zanimive Članki...