Java中float和double转换的问题?

sea2010seadesdsf sea2010seadesdsf 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
为什么double转float不会出现数据误差,而float转double却误差如此之大?

double d = 3.14;

float f = (float)d;

System.out.println(f);

输出结果是:3.14;





float f = 127.1f;

double d = f;

System.out.println(d);

输出结果是:127.0999984741211



为什么结果会是这样呢?

如何避免这样的问题发生,让float转double能得到实际的数据?
...全文
评论 26
收藏 已收藏
分享
返回顶部
sea2010seadesdsf
Java SE 62,621 成员 307,251 内容