3.4是单精度还是双精度数

新手上路,请多包涵

3.4是单精度还是双精度数,如何判定的?

阅读 12.7k
2 个回答

3.4是双精度数, 没有加F。'
下面是百度出来的解析:
float的小数位只有23位,即二进制的23位,能表示的最大的十进制数为2的23次方,即8388608,即十进制的7位,严格点,精度只能百分百保证十进制的6位运算。

double的小数位有52位,对应十进制最大值为4 503 599 627 370 496,这个数有16位,所以计算精度只能百分百保证十进制的15位运算。

在Java中,浮点数字字面量默认被解析为双精度(double)。
如果想要表示一个单精度(float)数,需要在数字字面量后面添加字母"f"或"F"作为后缀。
至于为何字面量默认是双精度,可能是为了提供更高的精度和更安全的计算,适用于更多的场景

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题