加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

java:double与float之间的转换

(2013-04-03 16:54:36)
分类: eclipse

double与float之间的转换

首先,我说一下定义时赋值的情况
比如:
你可以这样来定义一个double型的
double d = 0.1;
然而,你不可以通过
float f = 0.1;来定义一个float型的,这是因为默认的小数是double型的
要定义一个float型的,有两种方式
float f = 0.1f;
或者 float f = (float)0.1;

相互之间的转化:
好吧,还是来举个例子:
假设有void f1(double d)
void f(float f)
这两个函数的定义

现在用上面定义的变量来调用一下就知道了
f(d);是有编译错误的,这说明java中double不能自动转化为float,改为f((float) d);就行了

但是f1(f),确是可以是,这是因为java可以自动的转化float至double来进行运算。

至于为什么?
java在运算时会自动的提升变量的精度来进行运算,double比float精度更高,所以可以自动的从float转化至double再进行运算。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有