课程
/后端开发
/Java
/Java入门第一季(IDEA工具)升级版
例如
int a=3;
int b=4;
int sum=a+b;
double avg1=sum/3;
float avg2=sum/3f;
2016-02-19
源自:Java入门第一季(IDEA工具)升级版 2-6
正在回答
个人感觉是精度不同吧,double可精确到16位,float精确到7位。例如,当你所得结果a小数后只有两位时,double a与float a结果应该没区别;但如果所得结果a为8位或更多时,结果就应该不同。本题运行的结果是avg1=2.0,avg2=2.3333333,题主应该将double avg1=sum/3改为double avg1=sum/3.0
lottazw 提问者
double用来定义整数,float用于定义浮点数,就是带小数点的数。sum/3=2.3333333,所以第一个算式保存为整数会截去小数部分,结果为2,第二个算式结果为2.3333333,默认保存七位小数
百度到的:对编程人员来说,double 和 float 的区别是double精度高,有效数字16位,float精度7位。但double消耗内存是float的两倍,double的运算速度比float慢得多,java语言中数学函数名称double 和 float不同,不要写错,能用单精度时不要用双精度(以省内存,加快运算速度)。
举报
0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始
2 回答double与float的区别
2 回答double 与float的区别
3 回答float和double有什么区别
2 回答JAVA变量中Float与Double的区别是什么?
1 回答double和float的主要区别是什么?