各位大神,帮小弟看一道java计算,小弟有点困惑 int x = 1 , y = 2 , z = 3; System.out.println(y+=z--/++x);以上为题目,请问结果输出? 麻烦给出理由java 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 z-- -->2++x -->2y+=1 -->3 y = y + z--/++xy = y + 2 / 2y = 2 +1 = 3 3java的算法机制,先++ --,再乘除 ,之后再+- 最后等于 然而 ++ --在前面的话先加1减1再处理,反之是处理完了再加1减1此处可以:y+=z/(1+x) ---y=y+1.5=3.5,然而 y是int类型,和四舍五入不一样,直接把小数点后面的舍去所有最后输出的是3 ++a和a++可完全不同的哦,++a是先把a自增1,再进行其他运算或操作,而a++相反,它表示先进行运算再对a进行自增操作,--也是同样是道理。因为x,y,z都是int型变量,所以除大运算的结果也是int型的,故而z--/++x的结果为(3/2)=1,y=y+1=3,明白了吗?先要想清楚是先自增还是后自增 求助,eclipse里的jar包升级后,会导致某些类丢失么? 两个表怎么同时插入数据 拿不定主意,哥们们帮我想个办法啦! 非常急!SQL 50分求一haibanate的问题~~~大家请进来看看!!!! 谁能给一个webservice最简单的例子? 高分求助,一个最简单的rmi例子,为什么得不到结果 关于J2EE系统的安全性通常都是怎么实现的? Mybatis框架中的ofType的问题 idea+activiti smtp 关于用webservice读文件路径问题
++x -->2
y+=1 -->3
y = y + 2 / 2
y = 2 +1 = 3
java的算法机制,先++ --,再乘除 ,之后再+- 最后等于
然而 ++ --在前面的话先加1减1再处理,反之是处理完了再加1减1
此处可以:y+=z/(1+x) ---y=y+1.5=3.5,然而 y是int类型,和四舍五入不一样,直接把小数点后面的舍去
所有最后输出的是3
因为x,y,z都是int型变量,所以除大运算的结果也是int型的,故而z--/++x的结果为(3/2)=1,y=y+1=3,明白了吗?先要想清楚是先自增还是后自增