我刚刚开始学习编码,这可能是一个非常简单的问题,但我已经看到 double 用于大于 int 可以容纳的数字。如果我理解正确的话, double 不如使用 long 精确。
那么如果我有一个大于 int 可以容纳的数字,最好使用 double 或 long 吗?在什么情况下,其中一种优于另一种?对此的最佳实践是什么?
(假设我想存储一个包含地球人口的变量。是 double 还是 long 更好?)
对于人类群体,使用
long
原始或 Long
类。
浮点类型牺牲精度来换取执行速度。 Java 中的这些类型包括
float
/Float
和 double
/Double
。
尺寸 | 整数 | 小数 |
---|---|---|
32 位 | /
|
/
|
64 位 | /
|
/
|
各有不同 |
|
|
如果使用整数(无分数):
int
/Integer
。内容需要 32 位。long
/Long
。内容需要 64 位。BigInteger
。如果使用小数(不是整数):
float
/Float
。内容需要 32 位。double
/Double
。内容需要 64 位。BigDecimal
。BigDecimal
。因此,对于地球上的人类人口,请使用
long
/Long
。