当前位置: 代码迷 >> Java相关 >> [求助]kind.i=kind.i++????
  详细解决方案

[求助]kind.i=kind.i++????

热度:531   发布时间:2006-05-15 17:42:00.0
[求助]kind.i=kind.i++????
public class Ceshi{
int i;
public static void main(String args[]){
Ceshi kind=new Ceshi();
kind.i=kind.i++;
System.out.println(kind.i);
}
}



这一句:kind.i=kind.i++;
先把kind.i的值赋给kind.i这是它的值为0,然后执行kind.i++即kind.i=kind.i+1;应该等于1呀;
为什么输出的是0,不是1呢?



----------------解决方案--------------------------------------------------------
当然是0啦
因为kind.i++这个时候i的值还是0啊,只不过赋完值后i就变成了1了
本来另了1,可是又把0赋回去了
----------------解决方案--------------------------------------------------------
还是晕乎乎的,我只看得懂"本来另了1"这儿,后来的又把0赋回去了想不通
它的流程就是先赋值
再执行kind.i++; //这时的kind.i应该为1
最后又赋值
----------------解决方案--------------------------------------------------------
冰封大哥,你给我说下正确的流程和当时的值吧
谢了
----------------解决方案--------------------------------------------------------
好像懂了,是不是这样的
本来kind.i++的值为1,但根据规则应该把+前的值传回去,
=号左边也是kind.i,所以kind.i又被打回原形为O了

----------------解决方案--------------------------------------------------------
有道理,你终于懂了
我那个另是我打错了,应该是加
我是打五笔的,两个字的编码正好是反的
----------------解决方案--------------------------------------------------------
哈哈,俺也是五笔的
----------------解决方案--------------------------------------------------------