读书人

Java中float和double转换的有关问题

发布时间: 2011-12-29 22:09:38 作者: rapoo

Java中float和double转换的问题?
为什么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能得到实际的数据?

[解决办法]
先把float型的变成String类型的,然后再装换成Double的

读书人网 >J2SE开发

热点推荐