黑马程序员技术交流社区
标题:
我纠结了 各位大婶,零基础的孩子伤不起啊
[打印本页]
作者:
道可道无间道
时间:
2015-5-26 23:27
标题:
我纠结了 各位大婶,零基础的孩子伤不起啊
class Demo
{
public static void main(String[] args)
{
int i=0;
i =i++;
System.out.println(i);
}
}
怎么打印出来结果是 0 尼,我怎么觉得应该是 1 啊
作者:
大西洋
时间:
2015-5-26 23:36
首先,我是大叔;
其次,你的这个问题,i++,是先把 i 进行赋值,打印出这个值,然后再加1,打印加1之后数值;
如果你想打印结果直接为1 ,那就改为 i = ++i; 这个是先加1 ,再赋值。
作者:
微凉的暮色
时间:
2015-5-26 23:36
i++ 先用后加
++i 先加后用
你的就是先用 后加的情况
作者:
Im海洋
时间:
2015-5-26 23:38
i++这里是先赋值再加加
作者:
CLAY
时间:
2015-5-26 23:47
i++先赋值再自加。i还等于0;++i先自加再赋值,i=1
作者:
feng0606
时间:
2015-5-27 11:12
想输出1的话把i=i++换成i=++i就行了,记住++在前在后的规律就好了。
作者:
bin2015
时间:
2015-5-27 11:27
i++是先赋值然后再自加
++i是先自加然后再赋值
作者:
hellotaomi
时间:
2015-5-27 11:44
大家都已经解释的很清楚了,我就不多说了哈
作者:
kmlitheima
时间:
2015-5-27 11:45
你还没看懂i++的真是含义。。。。要加强。i==i++,它的过程是这样的,i=i,
作者:
kmlitheima
时间:
2015-5-27 11:47
看来你还是没有看懂i=i++;的真是含义,要加强理解,i=i++;其实是i=i;i=i+1;这样两步合走一步完成的
作者:
姬光普
时间:
2015-5-27 14:51
大西洋 发表于 2015-5-26 23:36
首先,我是大叔;
其次,你的这个问题,i++,是先把 i 进行赋值,打印出这个值,然后再加1,打印加1之后数 ...
同意楼上
作者:
guojiadui
时间:
2015-5-27 15:35
改成++i就是1了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2