foreach, in (Referenční dokumentace jazyka C#)
Prohlášení foreach opakuje skupinu integrovaných prohlášení pro každý prvek v poli, nebo kolekci objektu, která implementuje rozhraní IEnumerable nebo IEnumerable.Prohlášení foreach je používáno pro iteraci v kolekci a tím pro získání požadovaných informací, ale nelze je použít pro přidání nebo odebrání položek z kolekce zdroje a zabránit tak neočekávaným vedlejším účinkům.Pokud potřebujete přidat nebo odebrat položky ze zdrojové kolekce, použijte pro smyčku.
Vložené příkazy se i nadále provádí pro každý prvek v poli nebo kolekci.Po dokončení iterace u všech prvků v kolekci je kontrola předána dalšímu příkazu následujícímu po bloku foreach.
Na libovolný bod v rámci bloku foreach můžete přerušit ze smyčky pomocí klíčového slova break nebo kroku na následující iteraci ve smyčce pomocí klíčového slova continue.
Smyčku foreach lze ukončit také pomocí příkazů goto, return nebo throw.
Další informace o klíčovém slovu foreach a příkladech kódu naleznete v následujících tématech:
Použití příkazu foreach s poli (Průvodce programováním v C#)
Postupy: Přístup ke třídě kolekce pomocí příkazu foreach (Průvodce programováním v C#)
Příklad
Následující kód ukazuje tři příklady:
typická smyčka foreach, která zobrazí obsah pole celých čísel
Smyčka for, která má stejnou funkci
Smyčka foreach, která udržuje počet prvků v poli
class ForEachTest
{
static void Main(string[] args)
{
int[] fibarray = new int[] { 0, 1, 1, 2, 3, 5, 8, 13 };
foreach (int element in fibarray)
{
System.Console.WriteLine(element);
}
System.Console.WriteLine();
// Compare the previous loop to a similar for loop.
for (int i = 0; i < fibarray.Length; i++)
{
System.Console.WriteLine(fibarray[i]);
}
System.Console.WriteLine();
// You can maintain a count of the elements in the collection.
int count = 0;
foreach (int element in fibarray)
{
count += 1;
System.Console.WriteLine("Element #{0}: {1}", count, element);
}
System.Console.WriteLine("Number of elements in the array: {0}", count);
}
// Output:
// 0
// 1
// 1
// 2
// 3
// 5
// 8
// 13
// 0
// 1
// 1
// 2
// 3
// 5
// 8
// 13
// Element #1: 0
// Element #2: 1
// Element #3: 1
// Element #4: 2
// Element #5: 3
// Element #6: 5
// Element #7: 8
// Element #8: 13
// Number of elements in the array: 8
}
Specifikace jazyka C#
Další informace najdete v tématu Specifikace jazyka C#. Specifikace jazyka je úplným a rozhodujícím zdrojem pro syntaxi a použití jazyka C#.
Viz také
Referenční dokumentace
Příkazy iterace (Referenční dokumentace jazyka C#)
for (Referenční dokumentace jazyka C#)