C # foreach hurok (példákkal)

Ebben a cikkben megtudhatjuk a foreach ciklusokat (a ciklus alternatívája), és hogyan használhatjuk őket tömbökkel és gyűjteményekkel.

A C # egy könnyen használható és olvashatóbb alternatívát kínál a ciklushoz, a foreach ciklust, ha tömbökkel és gyűjteményekkel dolgozunk, hogy a tömbök / gyűjtemények elemein keresztül ismétlődjünk. Az foreach hurok minden elemen keresztül iterál, ezért foreach ciklusnak hívják.

Mielőtt továbblépne a foreach hurokkal, látogasson el ide:

  • C # a hurokhoz
  • C # tömbök
  • C # gyűjtemények

A foreach hurok szintaxisa

 foreach (iterable-item elem) (// foreach hurok törzse) 

Itt az iterálható elem lehet tömb vagy gyűjteménycsoport.

Hogyan működik az foreach hurok?

A inforeach ciklussal együtt használt kulcsszót az iterálható elem iterációjára használják. Az in kulcsszó minden iterációban kiválaszt egy elemet az iterálható tételből, és eltárolja a változó elemben.

Első iteráció esetén az iterable-item első elemét az elem tárolja. A második iterációnál kiválasztják a második elemet és így tovább.

A foreach ciklus végrehajtásának száma megegyezik a tömbben vagy a gyűjteményben lévő elemek számával.

Íme egy példa a tömbön keresztüli iterációra a for ciklus segítségével:

1. példa: tömb nyomtatása ciklus használatával

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

Ugyanez a feladat elvégezhető a foreach hurok segítségével.

2. példa: tömb nyomtatása foreach hurok segítségével

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

Amikor mindkét programot futtatjuk, a kimenet a következő lesz:

 Szia 

A fenti programban a foreach ciklus a myArray tömb fölé ismétlődik. Első iterációnál az első elem, azaz a myArray (0) kiválasztásra kerül és ch-ben tárolódik.

Az utolsó iterációhoz hasonlóan az utolsó elem, azaz a myArray (4) van kiválasztva. A hurok törzsén belül a ch értéke ki van nyomtatva.

Ha mindkét programot megnézzük, a foreach ciklust használó program olvashatóbb és könnyebben érthető. Ennek oka egyszerű és kifejező szintaxisa.

Ezért a tömbökkel és gyűjteményekkel történő munka során a foreach hurok előnyösebb, mint a hurok.

3. példa: Nemek tömbjének bejárása foreach hurok segítségével

Ez a program kiszámítja a férfi és női jelöltek számát.

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

A program futtatásakor a kimenet a következő lesz:

 Férfiak száma = 6 nők száma = 4 

4. példa: foreach hurok listával (gyűjtemény)

Ez a program kiszámítja a listában szereplő elemek összegét.

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

A program futtatásakor a kimenet a következő lesz:

 Összeg = 44

Ebben a programban a foreach ciklust használják a gyűjteményen való áthaladásra. A gyűjtemény bejárása hasonló a tömbön való áthaladáshoz.

A gyűjtemény első elemét az első iterációnál választjuk, a második elemet a második iterációnál, és így tovább az utolsó elemig.

érdekes cikkek...