首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

为啥是这个结果解决方法

2012-04-03 
为啥是这个结果Java codeint x1int y 2int z 3y+z--/++xSystem.out.print(x+x+y+y+z+z

为啥是这个结果

Java code
        int x=1;        int y = 2;        int z = 3;        y+=z--/++x;        System.out.print("x="+x+"y="+y+"z="+z);答案为啥:x=2y=3z=2  y为什么不是3.5


[解决办法]
int 强转了 整数型
[解决办法]
int是整数,精度丢失了,要小数就用float
[解决办法]
精度的问题。。

[解决办法]
y+=z--/++x;
y的最后结果肯定不会带小数点 ,java会自动去掉小数

z--/++x ; // 相当于 3/2 ,即运算时 还是z还是3 ,而x已经进行了++ ,即x=2 ;
做完后,才做 z--,此时 z =2
int i =3 / 2 ; // i = 1 ;

所以 y += z--/++x;
相当于 y += 3/2 ;
相当于 y += 1 ;

热点排行