黑马程序员技术交流社区

标题: 求教一个作业基础问题,谢谢 [打印本页]

作者: drose    时间: 2016-5-29 18:48
标题: 求教一个作业基础问题,谢谢
int x = 1,y = 1;

if(x++==2 & ++y==2)
{
        x =7;
}
System.out.println("x="+x+",y="+y);                        
这里面的   x++==2,是不是看作  ++ 参与运算时的使用?  所以x的输出值才是2?


作者: 车前子008    时间: 2016-5-29 19:22
x++的意思是先参加运算  运算再自增1    ++y是先自增1  再参与运算
作者: My_Android    时间: 2016-5-29 19:30
x++ == 2;
先把 x的值拿跟2比较,相当于 1 == 2 ; false
然后 x++ 自己增加 1    相当于 x = x +1;  x 就等于2了。
++ y == 2 ;  反着来
作者: yourlike    时间: 2016-5-29 19:33
++在背后是指先运算再自增,所以x参与运算的时候还是1,输出的时候是2,y是先自增在运算,所以y在运算的时候就已经是2了。输出结果是XY都为2
作者: 2457740857    时间: 2016-5-29 20:43
好像上课的时候老师都有说吧?
作者: drose    时间: 2016-5-29 20:57
2457740857 发表于 2016-5-29 20:43
好像上课的时候老师都有说吧?

额,我是自己看的,没上课。。。
作者: 左星辰    时间: 2016-5-29 21:06
++在前,先参与运算再自增,++在后就先自增再参与运算
作者: GAREN    时间: 2016-5-29 21:11
++在后面是先参加运算    再自增
作者: ylw787442926    时间: 2016-5-29 21:56
谁在前先用谁~~~
作者: MrDevil    时间: 2016-5-29 22:30
随人有点绕,想明白哪个运算在前了,把他拆分这看就好了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2