CodeGym /Java-Blog /Random-DE /Java While-Schleife
Autor
Alex Vypirailenko
Java Developer at Toshiba Global Commerce Solutions

Java While-Schleife

Veröffentlicht in der Gruppe Random-DE
Die while- Schleife kommt in fast jeder Programmiersprache vor, und Java bildet da keine Ausnahme. While -Schleife in Java und anderen Sprachen führt eine Anweisung oder einen Anweisungsblock aus, solange der Wert der Bedingung, die sie ausgelöst hat, wahr ist. In diesem Artikel werden wir darüber sprechen, wie man mit der While- Schleife arbeitet. Java While-Schleife – 1

Wozu dienen Zyklen?

Ihre allerersten Programme waren eine Folge von Anweisungen, die Schritt für Schritt nacheinander ausgeführt wurden. Ohne Gabeln und Wiederholungen. Später begannen wir, Verzweigungen mithilfe von Bedingungsoperatoren zu verwenden. Nun, um sich wiederholende Aktionen auszuführen, gibt es Zyklen. Vielleicht sind Zyklen einer der offensichtlichsten Vorteile, die die Prozessautomatisierung für unerfahrene Programmierer bietet. Stellen Sie sich vor, Sie müssten ein Tracker-Programm schreiben, das die Anzahl der an einem Tag zurückgelegten Schritte zählt. Und wenn Sie beispielsweise 10.000 Schritte bestehen, sollte Ihnen das Programm eine Benachrichtigung über das erreichte Ziel senden. Die Aufgabe, eine Benachrichtigung zu erteilen, kann in Worten (oder Pseudocode) wie folgt ausgedrückt werden:

While (number of steps less than 10,000)
{
Count steps
}

Send notification "you have reached the goal"
Das heißt, sobald die Anzahl der Schritte der in der Bedingung angegebenen Anzahl entspricht, verlässt das Programm diesen Zyklus und sendet eine Benachrichtigung. Oder ein anderes Beispiel. Stellen Sie sich vor, Sie müssen ein Gedicht (oder eine Rede) auswendig lernen. Ein Gedicht gilt als auswendig gelernt, wenn man es dreimal hintereinander lesen kann, ohne hinzusehen. Wenn Sie sich ein Programm vorstellen, das Ihre Rezitationsversuche eines Gedichts aufzeichnet, müsste es ebenfalls eine Schleife verwenden:

While (success < 3)
learn a poem
Ähnliche Konstruktionen werden in allen modernen Lern-Apps verwendet, die beispielsweise beim Erlernen von Sprachen oder beim Spielen von Musikinstrumenten verwendet werden.

While-Schleife und ihre Struktur

Um Probleme wie die obigen Beispiele zu lösen und allgemeiner sich wiederholende Aktionen in Java zu automatisieren, können Sie die while- Schleife verwenden. In unserem Fall funktioniert die Java- While -Schleife gut. Dieses Design ordnet mehrere Aktionen in einer prägnanten und verständlichen Struktur an. Die while- Schleifenanweisung findet sich in fast allen Programmiersprachen. Es wiederholt eine Anweisung oder einen Anweisungsblock, solange der Wert seines Steuerausdrucks wahr ist. Die Form der while- Schleife ist wie folgt:

while(condition == true) {
    // statement or loop body
}
Die Bedingung muss ein boolescher Ausdruck sein, d. h. einer, der als wahr oder falsch bezeichnet werden kann. Hier sind einige Beispiele für boolesche Ausdrücke:

s != "exit";
a > 5;
true;
Der Hauptteil der Schleife wird ausgeführt, solange der bedingte Ausdruck wahr ist. Wenn die Bedingung falsch wird, wird die Kontrolle an die Codezeile übertragen, die nach der Schleife folgt. Wenn in der Schleife nur eine Anweisung verwendet wird, können geschweifte Klammern weggelassen werden (es ist jedoch besser, dies nicht zu tun). Der logische Ausdruck wird vor Beginn der while- Schleife ausgewertet und dann jedes Mal, bevor die nächste Wiederholung der Anweisung ausgeführt wird.

Beispiele für While-Schleifen

Schreiben wir ein Programm, das mithilfe einer While -Schleife alle Zahlen von 1 bis 10 aufsummiert :

public class WhileTest0 {
   public static void main(String[] args) {
       int i = 0;
       int sum = 0;
   //while loop     
   while (i < 11) {
           sum = sum + i;
           i++;
       }
       System.out.println(sum);
   }
}
Die Ausgabe ist:
55
Wir müssen die Summe aller Zahlen von 1 (oder von Null, das spielt keine Rolle) bis 10 berechnen. Wir machen die Anfangssumme und das erste Element gleich Null und erhöhen das Element mit jedem Durchgang von um eins die Schleife. Wir werden so lange summieren, bis das Argument gleich 10 wird (also kleiner als 11). Ebenso könnten wir die Bedingung i <= 10 schreiben . Nehmen wir ein weiteres Beispiel für eine Java- while- Schleife. Wir werden ein Programm schreiben, in dem Benutzer positive ganze Zahlen eingeben. Wenn sie eine Null oder eine negative Zahl eingeben, sollte das Programm dies melden und den Job beenden.

import java.util.Scanner;

public class WhileTest {
   public static void main(String[] args) {
       int positiveNumber = 1;
       Scanner scanner = new Scanner(String.valueOf(positiveNumber));
       while (positiveNumber > 0) {
           Scanner sc = new Scanner(System.in);
           System.out.println("Enter positive number:");
           positiveNumber = sc.nextInt();
           System.out.println("ok, next");
       }
       System.out.println("The number should be positive");
   }
}
Sie können das Programm verbessern und beispielsweise prüfen, ob der Benutzer genau eine Zahl und kein anderes Zeichen eingegeben hat oder ob die Zahl eine ganze Zahl ist.

do-while-Schleife

Die klassische while- Schleife, wie in den obigen Beispielen, prüft sofort, ob die Bedingung wahr ist. Daher kann es sich um einen Zyklus mit einer Vorbedingung handeln. Die while- Schleife hat einen Bruder, do-while, eine Schleife mit einer Nachbedingung. Das heißt, bevor die Prüfung der Wahrheit der Bedingung erfolgt, wird eine solche Schleife mindestens einmal ausgeführt:

do {
     // Loop body - periodically executed statement(s)
}while(Boolean expression);
Das erste Beispiel mit einer solchen Schleife würde also so aussehen:

public class WhileTest0 {
   public static void main(String[] args) {
       int i = 0;
       int sum = 0;
       do
        {
           sum = sum + i;
           i++;
       } while (i < 11);
       System.out.println(sum);
   }
}

Endloser Kreislauf

Die while- Schleife kann verwendet werden, um Endlosschleifen in der Form while(true) zu organisieren : Hier ist beispielsweise ein Programm, das endlos (mit einigen Nuancen) eine Reihe von ganzen Zahlen ausgibt:

public class EndlessLoop {
    public static void main(String[] args) {
        int i = 0;
        while (true) {
            System.out.println(i++);
        }
    }
}
Um das Gelernte zu vertiefen, empfehlen wir Ihnen, sich eine Videolektion aus unserem Java-Kurs anzusehen
Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION