English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C#-for-Schleife

Hier lernen Sie, wie Sie den for-Schleif verwenden, die Struktur des for-Schleifs, die mehrfache Ausführung von Anweisungen oder Codeblöcken in geschachtelten for-Schleifen und wie Sie den for-Schleif verlassen.

Das for-Schlüsselwort stellt den Schleif in C# dar. Der for-Schleif führt den Anweisungsblock wiederholt aus, bis die angegebene Bedingung false zurückgibt.

Syntax:

for (initializer; condition; iterator)
{    
   //Codeblock 
}

Der for-Schleif enthält folgende drei optionalen Teile, die durch Semikolons getrennt sind:

Initialisierer: wird verwendet, um eine Variable zu initialisieren, die ein lokales Variable des for-Schleifs sein wird und nicht außerhalb des Schleifs erreicht werden kann. Es können auch null oder mehrere Zuweisungsanweisungen, Methodenaufrufe, Inkrement- oder Dekrement-Ausdrücke sein, wie z.B.++oder i++sowie await-Ausdrücke.

Bedingungist eine boolesche Ausdrucksbedingung, die true oder false zurückgibt. Wenn das Ergebnis der Berechnung der Bedingung true ist, wird der Schleif erneut ausgeführt; andernfalls wird der Schleif verlassen.

Iteratordefiniert den Inkrement oder Dekrement des Zählers.

Der folgende for-Schleif führt einen Codeblock aus10mal.

for (int i = 0; i < 10; i++)
{
    Console.WriteLine("Wert von i: {0}", i);
}

Versuchen Sie es, die Ausgabe zu sehen:

Wert von i: 0
Wert von i: 1
Wert von i: 2
Wert von i: 3
Wert von i: 4
Wert von i: 5
Wert von i: 6
Wert von i: 7
Wert von i: 8
Wert von i: 9

Im obigen Beispiel ist int i = 0 eine Initialisierungsanweisung, wir haben einen int den Zähler i initialisiert und ihn auf 0 initialisiert. Der zweite Teil ist die Bedingungsbedeutung i < 10wenn die Bedingung wird true, dann führt es einen Codeblock aus. Nachdem der Codeblock ausgeführt wurde, springt es zum dritten Teil des Iterators. i+ + ist ein Inkrement-Statement, das den Zähler i wird erhöht1Nun wird es die Bedingungsbedeutung erneut überprüfen und denselben Vorgang wiederholen, bis die Bedingungsbedeutung false zurückgibt. Das Diagramm zeigt die Ausführungssteps des for-Schleifs.

Das Diagramm zeigt die Ausführungssteps des for-Schleifens.

Schrittfolge des for-Schleifens

Wenn ein Codeblock nur eine Anweisung enthält, muss er nicht in Klammern { } eingeschlossen werden, wie folgt.

 Beispiel: for-Schleifen

for (int i = 0; i < 10; i++){
  Console.WriteLine("Wert von i: {0}", i);
}

Die Teile Initialisierer, Bedingung und Iterator sind optional. Sie können Variablen vor dem for-Schleifen initialisieren und die Bedingungen und Iteratoren im Codeblock definieren, wie folgt.

 Beispiel: for-Schleifen in C#

int i = 0;
for(;;)
{
    if (i < 10)
    {
      Console.WriteLine("Wert von i: {0}", i);
      i++;
    } else {
       break;
    }
}
Ausgabe:
Wert von i: 0
Wert von i: 1
Wert von i: 2
Wert von i: 3
Wert von i: 4
Wert von i: 5
Wert von i: 6
Wert von i: 7
Wert von i: 8
Wert von i: 9

 Da diese drei Teile im for-Schleifen optional sind, müssen Sie vorsichtig bei der Definition der Bedingungen und Iteratoren sein. Andernfalls wird es ein unendlicher Zyklus sein, der nie endet.

for (; ; )
{
    Console.Write(1);
}
Ausgabe:
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ....

Die Steuerungsvariablen des for-Schleifens können jeder numerischen Datentyp sein, z.B. double, decimal usw.

for (double d = 1.01D; d < 1.10; d+= 0.01D)
{
    Console.WriteLine("Wert von i: {0}", d);
}
Ausgabe:
Wert von i: 1.01
Wert von i: 1.02
Wert von i: 1.03
Wert von i: 1.04
Wert von i: 1.05
Wert von i: 1.06
Wert von i: 1.07
Wert von i: 1.08
Wert von i: 1.09

Der Schrittteil im for-Schleifen kann den Wert der Variablen erhöhen oder verringern.

for (int i = 10; i > 0; i--)
{
    Console.WriteLine("Wert von i: {0}", i);
}
Ausgabe:
Wert von i: 10
Wert von i: 9
Wert von i: 8
Wert von i: 7
Wert von i: 6
Wert von i: 5
Wert von i: 4
Wert von i: 3
Wert von i: 2
Wert von i: 1

Aus dem for-Schleifen aussteigen

Sie können auch den Schlüsselwort "break" verwenden, um aus dem for-Schleifen auszusteigen.

for (int i = 0; i < 10; i++)
{
    if (i == 5 )
        break;
    Console.WriteLine("Wert von i: {0}", i);
}
Ausgabe:
Wert von i: 0
Wert von i: 1
Wert von i: 2
Wert von i: 3
Wert von i: 4

Mehrere Ausdrücke

Ein for-Schleifen kann auch mehrere durch Kommas getrennte Initialisierungs- und Iterationsbedingungen enthalten, wie folgt.

for (int i = 0, j = 0; i+j < 5; i++, j++)
{
    Console.WriteLine("Wert von i: {0}, J: {",1} ", i,j);
}
Ausgabe:
Wert von i: 0, J: 0 
Wert von i: 1, J: 1 
Wert von i: 2, J: 2

Ein for-Schleifen kann auch Anweisungen als Initialisierungs- und Iterationsbedingungen enthalten.

int i = 0, j = 5;
for (Console.WriteLine($"Initialisierer: i={i}, j={j}"); 
    i++ < j--; 
    Console.WriteLine($"Iterierer: i={i}, j={j}"))
    {
    }

Ausgabe:

Initialisierer:i = 0,j = 5
Iterator:i = 1,j = 4  
Iterator:i = 2,j = 3  
Iterator:i = 3,j = 2

geschachtelte Schleifen

C# ermöglicht eine geschachtelte Schleife in einer anderen for-Schleife.

for (int i = 0; i < 2; i++)
{
    for(int j =i; j < 4; j++){
       Console.WriteLine("i-Wert: {0}, J: {1} ", i,j);
    }
        
}
Ausgabe:
i-Wert:0,J:0 
i-Wert:0,J:1  
i-Wert:0,J:2  
i-Wert:0,J:3  
i-Wert:1,J:1  
i-Wert:1 ,J:2  
i-Wert:1,J:3