Hi, Can someone throw light on how the output of following code snippet is 0 ?
int i =0; i = i++; System.out.println(i);
What happens to ++ ? Why is i not incremented after the assignment ?
SCJP 1.4
Guddu Jhakas
Greenhorn
Joined: Feb 20, 2005
Posts: 9
posted
0
here value of i is assigned first than it is post incrimented. samjhe baaboo??
God is inside u<br />Belive him
Animesh Shrivastava
Ranch Hand
Joined: Jul 19, 2004
Posts: 298
posted
0
Shruti, as u know about the post increment operators, when post increment operator is applied to a variable j: first the current value of j is the value of the expression, and then later on the value of j increments. suppose u have
So the final value is evaluated as: 1)result = j; 2)j = j + 1; 3) return result;
Now solving ur question this way, u get result = i; i = i + 1; i = result;
Thats how it gets solved Hope u r clear also look at this