1. Einführung
Stell dir vor, du hast die Aufgabe: Zehnmal „Hallo!“ auf dem Bildschirm auszugeben. Klar, du könntest zehn Zeilen mit Console.WriteLine("Hallo!"); schreiben – aber du kennst ja jetzt die while-Schleife, also schaffst du das easy.
Aber es gibt noch eine Schleife – die for-Schleife, die eine Aktion genau so oft wiederholt, wie du willst. Und sie kann sogar selbst zählen!
Hier ein typisches Beispiel:
for (int i = 0; i < 10; i++)
{
Console.WriteLine("Hallo!");
}
Was macht dieser Code? Er gibt das Wort „Hallo!“ genau 10 Mal auf dem Bildschirm aus. Ohne Copy-Paste und ohne Handgelenkschmerzen.
2. Syntax der for-Schleife
Die for-Schleife besteht aus drei Hauptteilen, die in runden Klammern nach dem Schlüsselwort for stehen:
for (Initialisierung; Bedingung; Änderung)
{
// Schleifenrumpf
}
Schauen wir uns jedes Element genauer an:
- Initialisierung – meistens das Anlegen einer Zählvariablen, mit der die Wiederholungen gezählt werden (int i = 0).
- Bedingung – wird vor jedem Durchlauf geprüft. Ist sie wahr, läuft der Schleifenrumpf. Ist sie falsch, ist die Schleife zu Ende. Zum Beispiel i < 10.
- Änderung – ein Operator, der nach jedem Durchlauf ausgeführt wird. Meistens wird der Zähler erhöht oder verringert (i++).
Man kann das auch als Schema darstellen:
3. Vergleich von for und while
Vielleicht wird es klarer, wenn ich sage: for ist einfach eine andere Schreibweise für die while-Schleife.
Wir hatten die while-Schleife:
int i = 0; // Initialisierung der Schleifenvariable
while(i < 10) // Bedingung für die Schleife
{
Console.WriteLine(i); // Nützliche Aktion (Schleifenrumpf)
i++; // Zähler erhöhen
}
Das können wir als for-Schleife schreiben, indem wir alles, was die Schleifenlogik steuert, einfach verschieben:
for (int i = 0; i < 10; i++) // Initialisierung; Bedingung; Zähler erhöhen
{
Console.WriteLine(i); // Nützliche Aktion (Schleifenrumpf)
}
Die Schritte beider Schleifen:
- Initialisierung int i = 0; wird einmal vor der Schleife ausgeführt.
- Dann wird die Bedingung i <= 10 geprüft
- Dann die nützliche Aktion der Schleife Console.WriteLine(i);
- Dann wird der Zähler erhöht i++
- Dann geht es zurück zu Schritt 2.
4. Beispiele für die for-Schleife
Das einfachste Beispiel
Lass uns die Zahlen von 1 bis 5 ausgeben:
for (int i = 1; i <= 5; i++)
{
Console.WriteLine(i);
}
Ausgabe:
1
2
3
4
5
Hinweis: Wenn du i < 5 geschrieben hättest, wäre die letzte Ausgabe 4 gewesen.
Countdown
Willst du dich wie ein Astronaut fühlen? Machen wir einen Countdown!
for (int i = 5; i > 0; i--)
{
Console.WriteLine(i);
}
Console.WriteLine("Los geht's!");
Ausgabe:
5
4
3
2
1
Los geht's!
Schritt der Schleife ist nicht 1
Du kannst den Zähler nicht nur um 1, sondern auch um eine andere Zahl verändern:
for (int i = 0; i <= 10; i += 2)
{
Console.WriteLine(i);
}
// Gibt aus: 0 2 4 6 8 10
5. Varianten der for-Schleife
Mehrere Variablen in der Schleife
Manchmal ist es praktisch, gleich zwei Variablen zu verfolgen. Zum Beispiel, lass uns Zahlen von rechts nach links und von links nach rechts ausgeben:
for (int links = 1, rechts = 10; links <= 10; links++, rechts--)
{
Console.WriteLine($"{links} {rechts}");
}
Ausgabe:
1 10
2 9
3 8
...
10 1
Endlose for-Schleife
Wenn es richtig hart kommt (zum Beispiel, dein Projekt ist ein Perpetuum Mobile in der IT), kannst du eine „endlose“ for-Schleife machen:
for (;;) // keine Initialisierung, keine Bedingung, keine Änderung
{
Console.WriteLine("Arbeiten, arbeiten und noch mal arbeiten!");
}
Achtung: So eine Schleife endet nur, wenn im Rumpf ein break, return oder throw steht. Benutz sie nicht ohne Grund, sonst weckst du vielleicht einen uralten Dämon – "Prozess reagiert nicht".
GO TO FULL VERSION