Schleifen sind grundlegende Kontrollstrukturen in der Programmierung, die es ermöglichen,
Sie sind besonders nützlich, um repetitive Aufgaben zu automatisieren und den Code effizienter und kompakter zu gestalten.
Es gibt verschiedene Arten von Schleifen, die in fast jeder Programmiersprache vorkommen:
for-Schleife:
while-Schleife:
do-while-Schleife:
for-Schleife ist eine kompakte Schreibweise für Zählschleifen.for (initialisierung; bedingung; update) {
// Codeblock, der wiederholt ausgeführt wird
}
// Beispiel
for (int i = 0; i < 10; i++) {
System.out.println("Die aktuelle Zahl ist: " + i);
}
while(true)Die while-Schleife prüft die Bedingung vor jedem Durchlauf
Auch hier: Laufe, solange eine Bedingung wahr bleibt bzw: while(true)
Wenn die Bedingung von Anfang an false ist, wird der Code kein einziges Mal ausgeführt .
while-Loops sind flexibler bei einer unbekannten Zahl von Iterationen.
wenn eine Menge von Einträgen zu durchlaufen sind, wir aber nicht wissen, wie viele genau das sein werden.
Keine Zählvariable (Falls wir eine solche Variable haben wollen, müsste diesevon außen beigesteuert werden)
Eine while-Loop checkt vielmehr oftmals, ob bestimmte **Bedingungen **noch wahr sind, ob sich beispielsweise Zustände geändert haben, oder nicht.
while (bedingung) {
// Code
}
Scanner scanner = new Scanner(System.in);
int input = 0;
while (input < 5) {
System.out.println("Gib eine Zahl größer als 5 ein, um die Schleife zu beenden:");
input = scanner.nextInt();
}
scanner.close();
true → Code ausführenDie do-while-Schleife prüft die Bedingung erst nach dem Durchlauf .
Dadurch wird der Code mindestens einmal ausgeführt , egal ob die Bedingung true oder false ist.
do {
// Code
} while (bedingung);
true → wiederholenStell dir ein Würfelspiel vor. Es soll so lange gewürfelt werden, bis eine 6 gefallen ist.
Das ist der klassische Use-Case für eine do-while:
import java.util.Random;
public class WuerfelSpiel {
public static void main(String[] args) {
Random random = new Random();
int wurf = 0;
System.out.println("Würfel wird geworfen...");
do {
wurf = random.nextInt(6) + 1; // Zufallszahl zwischen 1 und 6
System.out.println("Geworfen: " + wurf);
} while (wurf != 6);
System.out.println("Eine 6 wurde geworfen! Spiel beendet.");
}
}
while → vorherfor → vorher (mit zusätzlicher Struktur)do-while → nachher (läuft immer mindestens einmal)