Boucle foreach C # (avec des exemples)

Dans cet article, nous allons découvrir les boucles foreach (une alternative à la boucle for) et comment les utiliser avec des tableaux et des collections.

C # fournit une alternative facile à utiliser et plus lisible à la boucle for, la boucle foreach lorsque vous travaillez avec des tableaux et des collections pour parcourir les éléments des tableaux / collections. La boucle foreach parcourt chaque élément, donc appelée boucle foreach.

Avant d'aller de l'avant avec la boucle foreach, visitez:

  • C # pour la boucle
  • Tableaux C #
  • Collections C #

Syntaxe de la boucle foreach

 foreach (élément dans iterable-item) (// corps de la boucle foreach) 

Ici, iterable-item peut être un tableau ou une classe de collection.

Comment fonctionne la boucle foreach?

Le inmot-clé utilisé avec la boucle foreach est utilisé pour itérer sur l'élément itérable. Le mot-clé in sélectionne un élément de l'élément iterable à chaque itération et le stocke dans l'élément variable.

Lors de la première itération, le premier élément de l'élément iterable est stocké dans l'élément. Lors de la deuxième itération, le deuxième élément est sélectionné et ainsi de suite.

Le nombre d'exécutions de la boucle foreach est égal au nombre d'éléments dans le tableau ou la collection.

Voici un exemple d'itération dans un tableau à l'aide de la boucle for:

Exemple 1: Impression d'un tableau à l'aide de la boucle 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)); ) ) ) ) 

La même tâche peut être effectuée en utilisant la boucle foreach.

Exemple 2: Impression d'un tableau à l'aide de la boucle 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); ) ) ) ) 

Lorsque nous exécutons les deux programmes, la sortie sera:

 Bonjour 

Dans le programme ci-dessus, la boucle foreach itère sur le tableau myArray. Lors de la première itération, le premier élément c'est-à-dire myArray (0) est sélectionné et stocké dans ch.

De même lors de la dernière itération, le dernier élément à savoir myArray (4) est sélectionné. À l'intérieur du corps de la boucle, la valeur de ch est imprimée.

Lorsque nous examinons les deux programmes, le programme qui utilise la boucle foreach est plus lisible et plus facile à comprendre. Ceci est dû à sa syntaxe simple et expressive.

Par conséquent, la boucle foreach est préférable à la boucle for lorsque vous travaillez avec des tableaux et des collections.

Exemple 3: Traverser un tableau de genre à l'aide de la boucle foreach

Ce programme calcule le nombre de candidats hommes et femmes.

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

Lorsque nous exécutons le programme, la sortie sera:

 Nombre d'hommes = 6 Nombre de femmes = 4 

Exemple 4: boucle foreach avec List (Collection)

Ce programme calcule la somme des éléments dans une liste.

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

Lorsque nous exécutons le programme, la sortie sera:

 Somme = 44

Dans ce programme, la boucle foreach est utilisée pour parcourir une collection. Traverser une collection est similaire à parcourir un tableau.

Le premier élément de la collection est sélectionné à la première itération, le deuxième élément à la deuxième itération et ainsi de suite jusqu'au dernier élément.

Articles intéressants...