У овом чланку ћемо научити о фореацх петљама (алтернатива фор фор лооп) и како их користити са низовима и колекцијама.
Ц # пружа једноставну за употребу и читљивију алтернативу фор петљи, фореацх петљи када се ради са низовима и колекцијама за итерацију кроз ставке низова / колекција. Петља фореацх пролази кроз сваку ставку, па се стога назива фореацх петља.
Пре него што кренете напред са петљом фореацх, посетите:
- Ц # за петљу
- Ц # низови
- Ц # колекције
Синтакса фореацх петље
фореацх (елемент у итерабле-итем) (// тело петље фореацх)
Овде итерабле-итем може бити низ или класа колекције.
Како функционира фореацх петља?
in
Кључна реч користи заједно са фореацх петље се користи за поновити преко итерабле-ставке. Кључна реч ин бира ставку из итерабле-ставке на свакој итерацији и чува је у елементу променљиве.
На првој итерацији, прва ставка итерабле-ставке чува се у елементу. На другој итерацији се бира други елемент и тако даље.
Број извршавања петље фореацх једнак је броју елемената у низу или колекцији.
Ево примера понављања низа помоћу петље фор:
Пример 1: Штампање низа помоћу петље фор
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)); ) ) ) )
Исти задатак се може урадити помоћу фореацх петље.
Пример 2: Штампање низа помоћу фореацх петље
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); ) ) ) )
Када покренимо оба програма, излаз ће бити:
Здраво
У горњем програму, фореацх петља се понавља преко низа, миАрраи. На првој итерацији, први елемент тј. МиАрраи (0) се бира и чува у погл.
Слично на последњој итерацији, бира се последњи елемент, тј. МиАрраи (4). Унутар тела петље исписује се вредност цх.
Када погледамо оба програма, програм који користи фореацх петљу је читљивији и лак за разумевање. То је због његове једноставне и изражајне синтаксе.
Стога се фореацх петља даје предност у односу на лооп када се ради са низовима и колекцијама.
Пример 3: Прелазак низа полова помоћу фореацх петље
Овај програм израчунава број кандидата и кандидаткиња.
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); ) ) )
Када покренемо програм, излаз ће бити:
Број мушких = 6 Број женских = 4
Пример 4: фореацх петља са листом (колекција)
Овај програм израчунава зброј елемената на Листи.
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); ) ) )
Када покренемо програм, излаз ће бити:
Збир = 44
У овом програму, фореацх петља се користи за прелазак кроз колекцију. Прелазак колекције је сличан прелазу кроз низ.
Први елемент колекције се бира на првој итерацији, други елемент на другој итерацији и тако даље до последњег елемента.