Heim > Java > javaLernprogramm > Java-Präfix vs. Postfix-Inkrement/Dekrement: Warum ergibt „i' in diesem Beispiel 7?

Java-Präfix vs. Postfix-Inkrement/Dekrement: Warum ergibt „i' in diesem Beispiel 7?

Patricia Arquette
Freigeben: 2024-12-17 02:41:24
Original
280 Leute haben es durchsucht

Java Prefix vs. Postfix Increment/Decrement: Why Does `i  ` Result in 7 in This Example?

Präfix- und Postfix-Inkrementierungs-/Dekrementierungsoperatoren in Java

Das Verständnis des Unterschieds zwischen Präfix- und Postfix-Inkrementierungs-/Dekrementierungsoperatoren ist bei der Java-Programmierung von entscheidender Bedeutung. In diesem Artikel werden die Auswirkungen dieser Operatoren anhand eines praktischen Beispiels untersucht.

Frage:

Bedenken Sie den folgenden Codeausschnitt:

int i = 3;
i++; // Postfix increment

System.out.println(i);    // Prints "4"

++i; // Prefix increment
System.out.println(i);    // Prints "5"
System.out.println(++i);  // Prints "6"
System.out.println(i++);  // Prints "6"
System.out.println(i);    // Prints "7"
Nach dem Login kopieren

Warum? Der letzte Aufruf von System.out.println(i) gibt den Wert aus 7?

Antwort:

Das Verhalten dieses Codes wird durch die Semantik der Präfix- und Postfix-Inkrementoperatoren bestimmt:

  • Präfix-Inkrement ( ): Erhöht den Operanden, bevor er in einem verwendet wird Ausdruck.
  • Postfix-Inkrement ( ): Erhöht den Operanden, nachdem er in einem Ausdruck verwendet wurde.

Präfix-Inkrement:

int i = 6;
System.out.println(++i); // Prints "6"
Nach dem Login kopieren

i ergibt 7, da i erhöht wird, bevor der Wert im Ausdruck verwendet wird. Also gibt es „6“ aus und erhöht i auf 7.

Postfix-Inkrement:

int i = 6;
System.out.println(i++); // Prints "6" (i = 7, prints 6)
Nach dem Login kopieren

i ergibt 6, da es eine Kopie von i speichert, fügt hinzu 1 zu i und gibt den ursprünglichen Wert zurück. Der Ausdruck gibt „6“ aus, aber i ist jetzt 7.

Im letzten Aufruf gibt System.out.println(i) den aktuellen Wert von i aus, der 7 ist. Dies liegt am Postfix-Inkrementoperator hatte es zuvor auf 7 aktualisiert.

Das obige ist der detaillierte Inhalt vonJava-Präfix vs. Postfix-Inkrement/Dekrement: Warum ergibt „i' in diesem Beispiel 7?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage