为了账号安全,请及时绑定邮箱和手机立即绑定

用整型数当被除数计算时,只能得到整型吗.为什么?

public class HelloWorld{
    public static void main(String[] args) {
  int age1=24;
  int age2=18;
  int age3=36;
  int age4=27;
 double sum=age1+age2+age3+age4;
  double avg=sum/4;
  int minus=age1-age2;
  int newAge=--age1;
  
     System.out.println("年龄总和:"+sum);
     System.out.println("平均年龄:"+avg);
  System.out.println("年龄差值:"+minus);
  System.out.println("自减后的年龄:"+newAge);

 }
}为什么用int sum时算出的avg是整数,用double sum时才能算出精确的avg。我知道int是整型,但是计算avg时是用的是double双精度浮点型的,难道用整型数当被除数计算时,只能得到整型吗.为什么?

正在回答

2 回答

希望能帮到你

0 回复 有任何疑惑可以回复我~

赋值符号优先级来说的话,右边 如果 sum是整型而且除数也是整型,那么在首先判断sum和除数的类型,如果sum都是整型,那么计算出来的数据是整型,然后这个整型在赋值的过程中转成double,所以你看上去还是整型数据

如果 sum、或者除数任意一个数据是 double类型,这时才会进行类型隐式转换,你可以把  4修改成4.0,SUM即使是整型,输出结果是double类型,你可以试试~

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

用整型数当被除数计算时,只能得到整型吗.为什么?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信