"Grundkurs Programmieren in Java - (8. Auflage, 2018)"
2001-2018, Carl Hanser Verlag
Lösungsvorschlag zu Aufgabe 3.11 (Version 3.0)
(c) 2001-2018 D. Ratz, D. Schulmeister-Zimolong, D. Seese, J. Wiesenberger
Das Programm gibt folgendes aus:
2
2
2
3
9
5
9
6
Begründung:
System.out.println(++a);
- Die Variable a wird zunächst um 1 erhöht
- Danach wird der Wert des Ausdrucks festgestellt (der Wert des Ausdrucks ist der Wert von
a nach der ++-Operation, also 2) und ausgegeben.
System.out.println(a);
- Der aktuelle Wert der Variablen a (also 2) wird ausgegeben.
System.out.println(b++);
- Zuerst wird der Wert des Ausdrucks festgestellt (der Wert
des Ausdrucks ist der Wert von b vor der ++-Operation,
also 2) und später auch ausgegeben.
- Danach wird die Variable b um 1 erhöht.
System.out.println(b);
- Der aktuelle Wert der Variablen b (also 3) wird ausgegeben.
System.out.println((++c) + (++c));
- Die Variable c wird zunächst um 1 erhöht.
- Danach wird der Wert des linken Operanden des Operators +
festgestellt (der Wert dieses Teilausdrucks ist der Wert von c
nach der ++-Operation, also 4).
- Die Variable c wird erneut um 1 erhöht.
- Danach wird der Wert des rechten Operanden des Operators +
festgestellt (der Wert dieses Teilausdrucks ist der Wert von c
nach der erneuten ++-Operation, also 5).
- Danach wird die Operation + ausgeführt und die Werte
der beiden Teilausdrücke (4 und 5) addiert und der so berechnete
Wert (also 9) ausgegeben.
System.out.println(c);
- Der aktuelle Wert der Variablen c (also 5) wird ausgegeben.
System.out.println((d++) + (d++));
- Zuerst wird der Wert des linken Operanden des Operators +
festgestellt (der Wert dieses Teilausdrucks ist der Wert von d
vor der ++-Operation, also 4).
- Danach wird die Variable d um 1 erhöht.
- Danach wird der Wert des rechten Operanden des Operators +
festgestellt (der Wert dieses Teilausdrucks ist der Wert von d
vor der erneuten ++-Operation, also 5).
- Danach wird die Variable d erneut um 1 erhöht.
- Danach wird die Operation + ausgeführt und die Werte
der beiden Teilausdrücke (4 und 5) addiert und der so berechnete
Wert (also 9) ausgegeben.
System.out.println(d);
- Der aktuelle Wert der Variablen d (also 6) wird ausgegeben.