Цикл C # foreach (з прикладами)

У цій статті ми дізнаємося про цикли foreach (альтернатива циклу for) та про те, як їх використовувати з масивами та колекціями.

C # забезпечує просту у використанні та більш читабельну альтернативу циклу for, циклу foreach під час роботи з масивами та колекціями для ітерації елементів масивів / колекцій. Цикл foreach перебирає кожен елемент, отже, називається foreach loop.

Перш ніж рухатися вперед за допомогою циклу foreach, відвідайте:

  • C # для циклу
  • Масиви C #
  • Колекції C #

Синтаксис циклу foreach

 foreach (елемент у елементі iterable) (// тіло циклу foreach) 

Тут iterable-item може бути масивом або класом колекції.

Як працює цикл foreach?

inКлючове слово , що використовується у зв'язку з петлею Еогеасп використовується для ітерації по Iterable-елемента. Ключове слово in вибирає елемент з ітеративного елемента на кожній ітерації та зберігає його в елементі змінної.

На першій ітерації перший елемент iterable-елемента зберігається в елементі. На другій ітерації вибирається другий елемент тощо.

Кількість запусків циклу foreach дорівнює кількості елементів у масиві чи колекції.

Ось приклад ітерації масиву за допомогою циклу for:

Приклад 1: Друк масиву за допомогою циклу 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)); ) ) ) ) 

Те саме завдання можна зробити за допомогою циклу foreach.

Приклад 2: Друк масиву за допомогою циклу 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); ) ) ) ) 

Коли ми запустимо обидві програми, результат буде:

 Здравствуйте 

У наведеній вище програмі цикл foreach переглядає масив myArray. На першій ітерації виділяється перший елемент, тобто myArray (0), який зберігається в ch.

Так само на останній ітерації вибирається останній елемент, тобто myArray (4). Всередині тіла циклу друкується значення ch.

Коли ми розглядаємо обидві програми, програма, яка використовує цикл foreach, є більш читабельною та простою для розуміння. Це пов’язано з його простим та виразним синтаксисом.

Отже, при роботі з масивами та колекціями цикл foreach є кращим, ніж цикл for.

Приклад 3: Обхід масиву статі за допомогою циклу foreach

Ця програма обчислює кількість кандидатів чоловічої та жіночої статі.

 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: цикл foreach зі списком (колекція)

Ця програма обчислює суму елементів у списку.

 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

У цій програмі цикл foreach використовується для обходу колекції. Обхід колекції схожий на обхід масиву.

Перший елемент колекції вибирається на першій ітерації, другий елемент на другій ітерації і так до останнього елемента.

Цікаві статті...