Zählschleife: Unterschied zwischen den Versionen

Aus EINI
Wechseln zu: Navigation, Suche
(Die Seite wurde neu angelegt: „Die for-Schleife ist eine Schleifenart in Java. In solch einer Schleife werden Befehle solange wiederholt, bis eine Abbruchbedingung erfüllt wurde. Ansonsten …“)
(kein Unterschied)

Version vom 3. September 2015, 15:22 Uhr

Die for-Schleife ist eine Schleifenart in Java. In solch einer Schleife werden Befehle solange wiederholt, bis eine Abbruchbedingung erfüllt wurde. Ansonsten ist ein laufendes Programm in einer Endlosschleife gefangen.


Aufbau einer for-Schleife

Der Schleifenkopf

Das Schlüsselwort für eine for-Schleife ist das namensgebende for. Darauf folgt der Schleifenkopf mit folgendem Aussehen: ( 1. ; 2. ; 3. ). Hinter der letzten Klammer darf kein Semikolon folgen.

Unter 1. kann eine Zählvariable initialisiert werden, z.B. int i = 0;.

Unter 2. kann und sollte eine Bedingung für das Ausführen der Schleife stehen, z.B. i < 5. Solange dies erfüllt ist, wird die Schleife ausgeführt.

Unter 3. kann eine Fortsetzung stehen, die als letztes im Schleifenrumpf ausgeführt wird, z.B. ++i.


Zusammenfassend sieht der Schleifenkopf einer for-Schleife so aus:

for(Initialisierung ; Bedinung ; Fortsetzung)

Beispiel:

for( int i = 0 ; i < 5 ; ++i)

Der Schleifenrumpf

Als Schleifenrumpf wird der Programmcode bezeichnet, der in der Schleife wiederholt werden soll. Wenn keine {}-Klammern gesetzt werden, wird nur der erste Befehl nach dem Schleifenkopf wiederholt. Wenn mehrere Befehle wiederholt werden sollen, dann muss auf dem Schleifenkopf { folgen. Nach dem letztem Befehl des Schleifenrumpfs }.

for (...)
{
  erg = erg + 5;
  System.out.println(erg);
}

Mit jedem Schleifendurchlauf wird die Variable erg um 5 erhöht. Danach wird diese im jedem Durchlauf ausgegeben.

for (...)
  erg = erg + 5;
  System.out.println(erg);

Auch hier wird bei jedem Schleifendurchlauf die Variable erg um 5 erhöht. Jedoch wird nur diese Variable nur nach der Schleife einmal ausgegeben.



die (komplette) for-Schleife

for( int i = 0 ; i < 5 ; ++i)
{
  erg = erg + 5;
  System.out.println(erg)
}

Zunächst wird die Zählvariable i mit 0 initialisiert. Danach wird geprüft, ob i < 5 ist. Da dies korrekt ist, wird nun der Schleifenrumpf ausgeführt. Auf die Variable erg wird 5 aufaddiert und danach wird die Variable ausgegeben. Nun wird i auf 1 erhöht.

Der Schleifenkopf wird nun mit i = 1 ausgeführt. Die Initialisierung wird nun nicht mehr ausgeführt, da diese nur zu Beginn der Schleife ausgeführt wird. Es wird also direkt überprüft, ob i < 5 ist. 1 < 5 ist korrekt, der Schleifenrumpf wird also wieder ausgeführt. Der Variable erg wird nun wieder 5 aufaddeirt und danach wieder ausgegeben. Anschließend wird i auf 2 erhöht.

Analog werden die Fälle für i = 2, i = 3 und i = 4 ausgeführt.

Die Bedingung i < 5 ist bei i = 5 nicht mehr erfüllt. Daher wird der Schleifenrumpf nicht mehr ausgeführt. Die Zählvariable i wird nun verworfen.

weitere Schlüsselworte

break - Statement

Mit break kann eine Schleife vorzeitig abgebrochen werden.

Bsp.:

for( int i = 0 ; i < 5 ; ++i)
{
  if(i == 2)
  {
    break;
  }
}

Wenn i = 2 ist, wird die Schleife abgebrochen.


continue - Statement

for( int i = 0 ; i < 5 ; ++i)
{
  if(i == 2)
  {
    continue;
  }
  System.Out.println(i);
}

Wenn i = 2 ist, wird die Schleife direkt wiederholt. Die Ausgabe wird daher bei i = 2 übersprungen und es wird direkt mit i = 3 weitergerechnet.