java中1+1d/5和1+1/5什么区别
展开全部
主要区别就是数据类型不同.
1+1d/5的结果是1.2, 是double类型. 因为1d就是double类型,1d/5结果自动提升成double类型,1+1d/5结果也自动提升成double类型. .
1+1/5的结果1, 是int类型, 因为1/5是整除(会丢失小数部分的精度..) . 两边操作数都是int类型. 最后在加上1还是int类型.所以结果就是int类型.
java参考代码如下
public class Test {
public static void main(String[] args) {
double num1 = 1 + 1d / 5;
System.out.println(num1);//输出1.2
int num2 = 1 + 1 / 5;
System.out.println(num2);//输出1
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询