读书人

关于++符号的有关问题!前辈帮忙

发布时间: 2011-11-19 22:28:56 作者: rapoo

关于++符号的问题!前辈帮忙!
这段代码里——

int i=3;
int j=i++;//i=4,j=3
int k=++i;//i=5,k=5

第一个问题:书上说++的意思为自加1,那么上面的代码i的值为3,自加1后得4,在将i的值赋给j、结果应该是j和i都为4,怎么i等于4,j=3呢?

第二个问题:i++和++i有什么不同?

谢谢前辈们了!





[解决办法]


i++
i = i;
i = i + 1;

++i
i = i + 1;
i = i;
这是这两个操作的执行过程,

a int i=3;
b int j=i++;//i=4,j=3
c int k=++i;//i=5,k=5

执行过程如下
1 int i = 3;

2 int j = i; // j=3
3 i = i + 1; // i=4

4 i = i + 1; //i=5;
5 int k = i; //k=5;

b 相当于 1,2两句的效果
c 相当于 4,5两句的效果

读书人网 >J2SE开发

热点推荐