float数据类型是单精度32位IEEE 754浮点,double数据类型是双精度64位IEEE 754浮点。
这是什么意思?我什么时候应该使用float而不是double?
总结一下:
默认情况下,Java double用来表示其浮点数字(因此3.14键入文字double)。这也是数据类型,它将为你提供更大的数字范围,因此,我强烈建议在上使用它float。
double
float
有可能是某些库,实际上迫使你的使用float,但一般-除非你能保证你的结果将是小到足以适应float的规定范围,那么最好与选择double。
如果你需要准确性-例如,你不能使用不正确的十进制值(例如1/10 + 2/10),或者你正在使用货币进行任何操作(例如,在系统中代表$ 10.33),则使用BigDecimal,可以支持任意精度和类似情况的优雅处理。
1/10 + 2/10
$ 10.33
BigDecimal