开发中的后++运算一个迷惑

  后++运算,在javascript和java中测试的

var k = 0;

k = k++;

console.log(k); //0

//////////////////////////////////////////////////////////////////

int i = 0;

i = i++;

System.out.println(i);//0

 

  为什么结果是0,而不是1,计算机在计算的时候是先执行再++的,

如果需要结果是0,那么需要使用前置++,这个就不用多说了,不明白就自己测试下

 

  那么我们再看一个案例:

var k = 0;

k++;

console.log(k);

这个的结果又会是什么呢?没错就是1,不要被上面那个案例给迷糊了

 

  为什么会是这样呢?

  执行的过程是自上而下的,那么第二个等于1,这个能够理解

那第一个呢,是因为后++是比赋值晚执行的,当发现需要执行的时候,

会先赋值调用,执行完了再进行++运算,这样明白了吧

 

posted @ 2015-11-29 16:48  悬崖边上  阅读(158)  评论(0编辑  收藏  举报