java算数运算
如图程序,结果是:8and2。没太想明白怎么算的,每轮for循环的时候y不做+1处理吗?另外红框处x+和+y,这个+号一前一后,代表什么含义?感谢大神解答
这个考核的是你对循环及自加的内容
前两次循环,因为 if ((++x>2)||(++y>2))不成立,所以x、y各自加1
直到x=2,y=2
在java的||判断中,只要一个条件成立,后面的条件不会执行,所以,第3个循环开始
因为++x>2成立,所以++y不再执行,直到循环结束y=2
而x每个循环加2
第3个循环 x=4 y=2
第4个循环 x=6 y=2
第5个循环 x=8 y=2
最终结果
8and2
至于
++x与x++的区别,一个是先加,一个是后加,一般教材上有详细介绍,对本程序,这两个没有区别
只有
z=x++及z=++x结果才不一样
若x=1,
z=x++ ; //结果z=1,x=2,先赋值,后加1
z=++x; //结果z=2,x=2 ,先加1,后赋值
热门标签: