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

float avg=(float)sum/4.0错在哪?

float avg=(float)sum/4可以正确运行。变成4.0为什么又不行了。个人理解sum先被强转换成float,后面/4.0又变成double,double>float,所以错了?

正在回答

5 回答

public class HelloWorld{

    public static void main(String[] args) {

int age1=24;

int age2=18;

int age3=36;

int age4=27;

int sum = age1+age2+age3+age4;//四个人总和

//类型的默认转换是byte,short,char -- int -- long -- float -- double 

//float>int所以不用强制转换

float avg = sum/4;//四个人的总和÷4,求平均值

int minus = age1-age2;//age1,age2的差值

int newAge = --age1;//因为要表达newAge的自减1所以:--x(要放后面)

    System.out.println("年龄总和:"+sum);

    System.out.println("平均年龄:"+avg);

System.out.println("年龄差值:"+minus);

System.out.println("自减后的年龄:"+newAge);

}

}

/*

有什么不懂得可以问我,我要是不懂相互讨论哈

*/

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

float avg=(float)(sum/4);

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

float avg =(float)(sum/4);             就好了。

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

不用强制转换 直接定义为float就行

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

float avg=(float)sum/4.0f;


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

举报

0/150
提交
取消

float avg=(float)sum/4.0错在哪?

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