It\'s been 3 days since I start to learn Java.
I have this program and I don\'t understand code in main
method with ++
and --
operator
These are called Pre and Post Increment / Decrement Operators.
x++;
is the same as x = x + 1;
x--;
is the same as x = x - 1;
Putting the operator before the variable ++x;
means, first increment x
by 1, and then use this new value of x
int x = 0;
int z = ++x; // produce x is 1, z is 1
int x = 0;
int z = x++; // produce x is 1, but z is 0 ,
//z gets the value of x and then x is incremented.
++
and --
are called increment and decrement operators.
They are shortcuts for writing x = x+1
(x+=1
) / x = x-1
(x-=1
). (assumed that x
is a numeric variable)
In rare cases you could worry about the precedence of the incrementation/decrementation and the value the expression returns: Writing ++x
it means "increment first, then return", whereas x++
means "return first, then increment". Here we can distinguish between pre- and post increment/decrement operators.