猿问

这运行结果不一样,为什么?

int a=2;

int b=3;

int sum=a+b;                         

double avg=sum/2;

avg运行结果为:2.0

可是

int a=2;

int b=3;

double sum=a+b;                         

double avg=sum/2;

avg运行结果为:2.5

为防止以后出现计算错误,求老师指教、详解。谢谢。

XZ亮
浏览 1440回答 3
3回答

言曌博客liuyanzhao_com

int 类型 /2 = int 类型所以第一个sum是整形, 5/2 = 2 然后赋值给 double 类型的 avg 2.000000第二个 sum 是浮点型,5.000000/2=2.500000

我吃炸土豆

数据类型的隐式转换

劲哥哥

第一个5/2结果为整型的2,转为浮点型就是2.0;第二个整型5转为浮点型就是5.0,5.0/2就是浮点型的2.5
随时随地看视频慕课网APP

相关分类

Java
我要回答