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



