C # foreach slučka (s príkladmi)

V tomto článku sa dozvieme o foreach slučkách (alternatíva k for loop) a o tom, ako ich používať v poliach a kolekciách.

C # poskytuje ľahko použiteľnú a čitateľnejšiu alternatívu k cyklu for, cyklu foreach pri práci s poliami a kolekciami na iteráciu cez položky poľa / kolekcie. Slučka foreach iteruje každou položkou, a preto sa nazýva slučka foreach.

Pred prechodom vpred pomocou foreach loop navštívte:

  • C # pre slučku
  • Polia C #
  • C # zbierky

Syntax slučky foreach

 foreach (prvok v iterovateľnej položke) (// telo slučky foreach) 

Tu môže byť iterovateľnou položkou pole alebo trieda zbierky.

Ako funguje foreach loop?

inKľúčové slovo použiť spoločne s slučky foreach slúži k iterovat cez iterable-bodu. Kľúčové slovo in vyberie položku z iterovateľnej položky pri každej iterácii a uloží ju do variabilného prvku.

Pri prvej iterácii je prvá položka iterovateľnej položky uložená v prvku. Pri druhej iterácii sa vyberie druhý prvok atď.

Počet vykonaní slučky foreach sa rovná počtu prvkov v poli alebo kolekcii.

Tu je príklad iterácie cez pole pomocou slučky for:

Príklad 1: Tlač poľa pomocou slučky 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)); ) ) ) ) 

Rovnakú úlohu je možné vykonať pomocou slučky foreach.

Príklad 2: Tlač poľa pomocou slučky 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); ) ) ) ) 

Keď spustíme obidva programy, výstup bude:

 Ahoj 

Vo vyššie uvedenom programe slučka foreach iteruje cez pole myArray. Pri prvej iterácii sa vyberie prvý prvok, tj. MyArray (0), ktorý sa uloží do ch.

Podobne pri poslednej iterácii sa vyberie posledný prvok, tj. MyArray (4). Vo vnútri tela slučky je vytlačená hodnota ch.

Keď sa pozrieme na oba programy, program používajúci slučku foreach je čitateľnejší a ľahšie pochopiteľný. Je to tak kvôli jeho jednoduchej a expresívnej syntaxi.

Preto je pri práci s poľami a kolekciami uprednostňovaná slučka foreach pred slučkou.

Príklad 3: Prechádzanie poľa pohlavia pomocou slučky foreach

Tento program počíta počet mužov a žien.

 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); ) ) ) 

Keď spustíme program, výstup bude:

 Počet mužov = 6 Počet žien = 4 

Príklad 4: slučka foreach so zoznamom (kolekcia)

Tento program počíta súčet prvkov v zozname.

 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); ) ) ) 

Keď spustíme program, výstup bude:

 Súčet = 44

V tomto programe sa slučka foreach používa na prechádzanie zbierkou. Prechádzanie zbierky je podobné ako prechádzanie po poli.

Prvý prvok kolekcie sa vyberie pri prvej iterácii, druhý prvok pri druhej iterácii a tak ďalej až po posledný prvok.

Zaujímavé články...