++
et --
. Ils peuvent
tous deux être utilisés en configuration postfixe, ou préfixe.
C'est-à-dire avant l'identificateur,
ou après celui-ci. Si l'on place l'opérateur avant l'
identificateur, on effectuera
l'incrémentation avant l'exécution de la ligne en cours. La ligne
System.out.println(x++);
est équivalente à
System.out.println(x); x = x+1;
. De même,
System.out.println(++x);
équivaut à
x = x+1;System.out.println(x);
.
class incrementation {
public static void main(String args[]) {
int x = 0;
int y = 0;
x++; // postfixe
++y; // prefixe
System.out.println("x == "+x);
System.out.println("y == "+y);
System.out.println("x++ == "+ x++);
System.out.println("++y == "+ ++y);
System.out.println("x == "+x);
System.out.println("y == "+y);
x = x++; // inutile car equivalent a "x = x; x = x+1;"
y = --y; // inutile car equivalent a "y = y-1; y = y;"
System.out.println("x == "+x);
System.out.println("y == "+y);
x = y++; // equivalent a "x = y; y = y+1;"
System.out.println("x == "+x);
System.out.println("y == "+y);
}
}
x == 1
y == 1
x++ == 1
++y == 2
x == 2
y == 2
x == 2
y == 1
x == 1
y == 2
Notons que l'incrémentation et la décrémentation sont
également possibles sur des
variable à virgule flottante.
Cela a pour effet de leur ajouter, respectivement soustraire,
la quantité 1.0
.