4和10都是整数int类型的,所以4/10结果也是int的,就是0,把结果赋值给double类型,才会转换成double,就是0.0d;若果想得到完整的结果0.4,那就需要在除法前先将4或者10转换成double类型
比如(double)4/10;
java中数字的运算是按照double flout long int char byte 的顺序向上靠拢的,比如flout和int运算结果就是flout , 而int和int运算结果就是int,所以java中涉及数字运算的时候要注意根据你想要的结果类型对数字进行转换
4和10都是int型,所以它会以int型的方式先计算右边的4/10得到的结果是0;然后再赋值doouble型的yy,输出结果就会变成0.0
用double yy=(double)4/10就可以得出0.4了;
计算机是这么一个顺序计算的。第一步4/10两个都是int型的,那么结果就是0。第二步把0赋值给yy(yy的类型是double),这时候yy=0.0。常年给人解答疑难杂症,从没人采纳过,望给个采纳
4和10都是int型的。默认这样写的都是int
int型的除法是取整的。所以等0.
然后向上转型为double就是0了
因为4/10的到的数是0.4,因为你前面定义的是int类型,int类型是取整数,所以小数点后面的数字会被忽略。取值就是0了。要想取到0.4就把int改为double