foreach, in (C#-Referenz)
Aktualisiert: November 2007
Mit der foreach-Anweisung wird eine Gruppe von eingebetteten Anweisungen für jedes Element in einem Array oder einer Objektauflistung wiederholt, das die Schnittstelle System.Collections.IEnumerable oder System.Collections.Generic.IEnumerable<T> implementiert. Die foreach-Anweisung wird verwendet, um die Auflistung zu durchlaufen und dadurch die gewünschten Informationen zu erhalten. Setzen Sie sie nicht ein, um der Auflistung Elemente hinzuzufügen oder aus ihr zu entfernen, um unvorhersehbare Nebeneffekte zu vermeiden. Wenn Sie Elemente aus der Quellauflistung hinzufügen oder entfernen müssen, verwenden Sie eine for-Schleife.
Die Ausführung der eingebetteten Anweisungen wird für jedes Element in dem Array oder der Auflistung fortgesetzt. Nachdem die Iteration alle Elemente in der Auflistung durchlaufen hat, wird die Steuerung an die nächste Anweisung, die auf den foreach-Block folgt, übergeben.
Sie können die Schleife an jedem Punkt im foreach-Block mit dem break-Schlüsselwort unterbrechen oder mit dem continue-Schlüsselwort direkt zum nächsten Durchlauf der Schleife springen.
Eine foreach-Schleife kann durch die Anweisungen goto, return oder throw beendet werden.
Weitere Informationen zum foreach-Schlüsselwort und zu Codebeispielen finden Sie unter den folgenden Themen:
Verwenden von foreach mit Arrays (C#-Programmierhandbuch)
Gewusst wie: Zugreifen auf Auflistungsklassen mit foreach (C#-Programmierhandbuch)
Beispiel
In diesem Beispiel wird foreach verwendet, um den Inhalt eines Arrays ganzer Zahlen anzuzeigen.
class ForEachTest
{
static void Main(string[] args)
{
int[] fibarray = new int[] { 0, 1, 2, 3, 5, 8, 13 };
foreach (int i in fibarray)
{
System.Console.WriteLine(i);
}
}
}
/*
Output:
0
1
2
3
5
8
13
*/
C#-Programmiersprachenspezifikation
Weitere Informationen finden Sie in den folgenden Abschnitten von C#-Programmiersprachenspezifikation:
5.3.3.16 Foreach-Anweisungen
8.8.4 Die foreach-Anweisung
Siehe auch
Konzepte
Referenz
Iterationsanweisungen (C#-Referenz)