Java-Schleifenstrukturen - for, while und do...while

Eine Programmanweisung in einer sequenziellen Struktur kann nur einmal ausgeführt werden.

Wenn dieselbe Operation mehrmals ausgeführt werden soll, müssen Sie eine Schleifenstruktur verwenden.

In Java gibt es drei Hauptschleifenstrukturen:

  • whileSchleife
  • do…whileSchleife
  • forSchleife

In Java 5 wurde eine erweiterte for-Schleife eingeführt, die hauptsächlich für Arrays verwendet wird.


while-Schleife

while ist die grundlegendste Schleife, und ihre Struktur ist:

while(Boolescher Ausdruck) { //Schleifeninhalt }

Solange der boolesche Ausdruck true ist, wird die Schleife weiter ausgeführt.

Beispiel

Code der Datei Test.java:

public class Test { public static void main(String[] args) { int x = 10; while( x < 20 ) { System.out.print("Wert von x : " + x ); x++; System.out.print("\n"); } } }

Das Ergebnis des Kompilierens und Ausführens des obigen Beispiels ist wie folgt:

value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
value of x : 15
value of x : 16
value of x : 17
value of x : 18
value of x : 19

do...while-Schleife

Für die while-Anweisung gilt: Wenn die Bedingung nicht erfüllt ist, kann die Schleife nicht betreten werden. Aber manchmal müssen wir sie mindestens einmal ausführen, selbst wenn die Bedingung nicht erfüllt ist.

Die do...while-Schleife ähnelt der while-Schleife, außer dass die do...while-Schleife mindestens einmal ausgeführt wird.

do {
       //代码语句
}while(布尔表达式);

Hinweis:Der boolesche Ausdruck steht nach dem Schleifenkörper, daher wird der Anweisungsblock ausgeführt, bevor der boolesche Ausdruck geprüft wird. Wenn der Wert des booleschen Ausdrucks true ist, wird der Anweisungsblock weiter ausgeführt, bis der Wert des booleschen Ausdrucks false ist.

Beispiel

Code der Datei Test.java:

public class Test { public static void main(String[] args){ int x = 10; do{ System.out.print("Wert von x : " + x ); x++; System.out.print("\n"); }while( x < 20 ); } }

Das Ergebnis des Kompilierens und Ausführens des obigen Beispiels ist wie folgt:

value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
value of x : 15
value of x : 16
value of x : 17
value of x : 18
value of x : 19

for-Schleife

Obwohl alle Schleifenstrukturen mit while oder do...while dargestellt werden können, bietet Java eine weitere Anweisung — die for-Schleife, die einige Schleifenstrukturen einfacher macht.

Die Anzahl der Ausführungen einer for-Schleife wird vor der Ausführung bestimmt. Das Syntaxformat ist wie folgt:

for(Initialisierung; boolescher Ausdruck; Aktualisierung) { //Code-Anweisung }

Die folgenden Punkte erklären die for-Schleife:

  • Der Initialisierungsschritt wird zuerst ausgeführt. Ein Typ kann deklariert werden, eine oder mehrere Schleifensteuerungsvariablen können initialisiert werden, oder es kann eine leere Anweisung sein.
  • Dann wird der Wert des booleschen Ausdrucks getestet. Wenn er true ist, wird der Schleifenkörper ausgeführt. Wenn er false ist, wird die Schleife beendet und die Ausführung beginnt bei den Anweisungen nach dem Schleifenkörper.
  • Nachdem die Schleife einmal ausgeführt wurde, werden die Schleifensteuerungsvariablen aktualisiert.
  • Testen Sie den booleschen Ausdruck erneut. Die Schleife wiederholt den obigen Vorgang.

Beispiel

Code der Datei Test.java:

public class Test { public static void main(String[] args) { for(int x = 10; x < 20; x = x+1) { System.out.print("Wert von x : " + x ); System.out.print("\n"); } } }

Das Ergebnis des Kompilierens und Ausführens des obigen Beispiels ist wie folgt:

value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
value of x : 15
value of x : 16
value of x : 17
value of x : 18
value of x : 19

Erweiterte for-Schleife in Java

Java 5 führte eine erweiterte for-Schleife ein, die hauptsächlich für Arrays verwendet wird.

Das Syntaxformat der erweiterten for-Schleife in Java ist wie folgt:

for(Deklarationsanweisung : Ausdruck) { //Code-Anweisungen }

Deklarationsanweisung:Deklariert eine neue lokale Variable, deren Typ mit dem Typ der Array-Elemente übereinstimmen muss. Ihr Gültigkeitsbereich ist auf den Anweisungsblock der Schleife beschränkt, und ihr Wert entspricht dem Wert des aktuellen Array-Elements.

Ausdruck:Der Ausdruck ist der Name des Arrays, auf das zugegriffen werden soll, oder eine Methode, deren Rückgabewert ein Array ist.

Beispiel

Code der Datei Test.java:

public class Test { public static void main(String[] args){ int [] numbers = {10, 20, 30, 40, 50}; for(int x : numbers ){ System.out.print( x ); System.out.print(","); } System.out.print("\n"); String [] names ={"James", "Larry", "Tom", "Lacy"}; for( String name : names ) { System.out.print( name ); System.out.print(","); } } }

Das Ergebnis des Kompilierens und Ausführens des obigen Beispiels ist wie folgt:

10,20,30,40,50,
James,Larry,Tom,Lacy,

break-Schlüsselwort

break wird hauptsächlich in Schleifenanweisungen oder switch-Anweisungen verwendet, um aus dem gesamten Anweisungsblock auszubrechen.

break bricht aus der innersten Schleife aus und führt die Anweisungen unterhalb der Schleife weiter aus.

Syntax

Die Verwendung von break ist sehr einfach; es ist nur eine Anweisung in der Schleifenstruktur:

break;

Beispiel

Code der Datei Test.java:

public class Test { public static void main(String[] args) { int [] numbers = {10, 20, 30, 40, 50}; for(int x : numbers ) { //Schleife abbrechen, wenn x gleich 30 ist if( x == 30 ) { break; } System.out.print( x ); System.out.print("\n"); } } }

Das Ergebnis des Kompilierens und Ausführens des obigen Beispiels ist wie folgt:

10
20

continue-Schlüsselwort

continue gilt für jede Schleifensteuerungsstruktur. Seine Wirkung besteht darin, dass das Programm sofort zur nächsten Iteration der Schleife springt.

In einer for-Schleife bewirkt die continue-Anweisung, dass das Programm sofort zur Aktualisierungsanweisung springt.

In einer while- oder do...while-Schleife springt das Programm sofort zur Testanweisung für den booleschen Ausdruck.

Syntax

continue ist einfach eine einzelne Anweisung im Schleifenkörper:

continue;

Beispiel

Code der Datei Test.java:

public class Test { public static void main(String[] args) { int [] numbers = {10, 20, 30, 40, 50}; for(int x : numbers ) { if( x == 30 ) { continue; } System.out.print( x ); System.out.print("\n"); } } }

Das Ergebnis des Kompilierens und Ausführens des obigen Beispiels ist wie folgt:

10
20
40
50
Andere Erweiterungen