Inkrementiere nach Verwendung


zur vorherigen Seite  
zum Inhaltsverzeichnis  
zur nächsten Seite

Antwort:

int zaehler = 0;
while( zaehler < 10 )
{
  System.out.println("Zaehler = " + zaehler );
  zaehler++ ;
}

Inkrementiere nach Verwendung

Der Postfix-Inkrement-Operator ++ addiert eins zu einer Variablen. Normalerweise ist die Variable vom Typ Ganzzahl (byte, short, int oder long), aber es kann auch eine Variable vom Typ Gleitpunkt (float oder double) sein. Zwischen den beiden Plus-Zeichen darf kein Zeichen stehen.

Der Postfix-Operator muss auf die Variable folgen.
Üblicherweise werden die zwei Pluszeichen unmittelbar hinter den Variablennamen geschrieben, so wie oben, obwohl das kein Muss ist.

Der Postfix-Inkrement-Operator kann als Teil eines arithmetischen Ausdrucks verwendet werden, so wie in dem folgenden Beispiel:

int summe = 0;
int zaehler = 10;
summe = zaehler++ ;
System.out.println("Summe: " + summe +  " Zaehler: " + zaehler );

Dieses Programm wird ausgeben:

summe: 10  zaehler: 11

Die Anweisung summe = zaehler++ ;
inkrementiert die Variable zaehler nachdem der Wert, den sie enthält, verwendet wurde . Es ist sehr wichtig diese Details zu verstehen:

  • Die Zuweisungsanweisung wird in zwei Schritten ausgeführt:
    1. Auswerten des Ausdrucks auf der rechten Seite des Gleichheitszeichens.
      • Der Wert ist 10 (da zaehler bisher noch nicht inkrementiert wurde).
    2. Zuweisen des Wertes zu der Variablen links des Gleichheitszeichens.

      • summe bekommt den Wert 10.
  • Erst jetzt wird der ++ Operator wirksam: zaehler wird auf 11 inkrementiert.
  • Die nächste Anweisung gibt aus: summe: 10 zaehler: 11

Das ist verwirrend. Ich rate Euch den ++ Operator nur zu verwenden, um eine alleinstehende Variable zu inkrementieren, so wie in der Antwort zu der vorherigen Frage.


FRAGE 3:

Wir Untersuchen den folgenden Code:

int x = 99;
int y = 10;
y = x++ ;
System.out.println("x: " + x + "  y: " + y );

Was wird das Programm ausgeben?