Win a copy of Re-engineering Legacy Software this week in the Refactoring forum
or Docker in Action in the Cloud/Virtualization forum!

# n++

tricktan
Greenhorn
Posts: 15
to my understanding :
n++ == ++n
but
(y=x++) != (y=++x)
---- and -----
operanDS are evaluated right to left
while
while operationS are evaluated from left to right
---------------
how come :
int N = 2;
int method(int N){
return 0X100 + N++;
}

yeilds 258 ??
Shouldn't N be 3 before added to 0X100 ?
Thanks for input.

CitySlicker
Greenhorn
Posts: 16
++n adds 1 to n FIRST and uses the new value of n in an expression, while n++ uses the value of n in the expression, then
adds 1. So in your method, the expression "return 0X100 + N++"
N is 2.
Originally posted by tricktan:
to my understanding :
n++ == ++n
but
(y=x++) != (y=++x)
---- and -----
operanDS are evaluated right to left
while
while operationS are evaluated from left to right
---------------
how come :
int N = 2;
int method(int N){
return 0X100 + N++;
}

yeilds 258 ??
Shouldn't N be 3 before added to 0X100 ?
Thanks for input.

Jim Yingst
Wanderer
Sheriff
Posts: 18671
I'm moving this to Java in General (Intermediate) where it's more on-topic and can get wider attention.

paul wheaton
Trailboss
Posts: 21341
"CitySlicker" is correct. There is a difference between the prefix incrment (++n) and the postfix increment (m++). And it has to do with when the increment happens.

Dai Feilong
Greenhorn
Posts: 1
I am confused too.

Jesper de Jong
Java Cowboy
Saloon Keeper
Posts: 15207
36
• 1
Dai Feilong, welcome to the Ranch!

Please note that the post that you replied to is more than 11 years old! The person who asked the question is probably not still waiting for an answer...

Campbell Ritchie
Sheriff
Posts: 48415
56
paul wheaton wrote:"CitySlicker" is correct. . . .
No, he is mistaken.

The truth is that there are two values, the value of n, which you can’t see, and the value of n++, which is the same as the old value of n.Try searching for “preincrement postincrement” on this forum and the “Beginning Java” forum, because this question and similar ones arise at least once a month. You can’t search for n++ unfortunately.