1.Java中数值类型
short、int、long、float、double,另外还有BigDecimal
2.长度
类型 | 字节 | 二进制位数 | 最大值 | 最小值 |
short | 2 | 16 | 2^15 - 1 | -2^15 |
int | 4 | 32 | 2^31 - 1 | -2^31 |
long | 8 | 64 | 2^63 - 1 | -2^63 |
float | 4 | 32 | 3.4028235E38 | 1.4E - 45 |
double | 8 | 64 | 1.7976931348623157E308 | 4.9E - 324 |
3.如果想要精确的答案,不要使用 float、double,9位以内使用int,18位以内使用long,超过18位必须使用BigDecimal。
如果与钱有关的最好以分为单位,尽量用int或者long,因为BigDecimal计算方法不方便且性能不好。