|
|
1
35
浮动不精确,可能会导致累积舍入误差。小数是财务信息的最佳格式,必须精确。 |
|
|
2
15
价格是十进制值,当涉及到舍入、文字等时,对它们的计算应该表现为十进制分数。 这正是十进制类型所做的。 浮点数存储为二进制分数,它们确实 不 表现得像小数-他们的行为往往不是人们过去对十进制数学所期望的。读 The Floating-Point Guide 详细解释。 对于money值,永远不要使用二进制浮点类型-尤其是当您有一个非常好的十进制类型可用时! |
|
|
3
9
对于财务计算,使用小数 根据IEEE754,浮点数总是二进制的,只有新的标准IEEE754R定义了十进制格式。许多分数二进制部分永远不能等于精确的十进制表示。任何二进制数都可以写成m/2^n(m,n个正整数),任何十进制数都可以写成m/(2^n*5^n)。由于双星缺少素数因子5,所以所有的二进制数都可以用小数精确表示,反之亦然。
因此,对于财务计算,使用十进制而不是浮点 |
|
|
4
1
当我们将一个数字存储在浮点中时,我们不保存确切的数字,这是一个近似值。整数部分获得优先级,小数部分与类型大小一样接近。所以,如果你有计算需要精确的结果,使用十进制。 |
|
|
5
0
请使用bigdecimal,因为它是最好的价格,因为硬币是正确的四舍五入到美元。 Joshua Bloch建议使用BigDecimal。 |
|
|
blogger13 · 视频租赁店数据库的规范化 1 年前 |
|
|
ì¤ì¤í · 为什么LEFT INNER JOIN被弃用? 1 年前 |
|
|
relatively_random · 确保两个表之间一致的共同参考 1 年前 |
|
|
Grenish Rai · Firestore错误“用户文档不存在” 1 年前 |
|
|
Saijo-Shi · PLpgsql中的更新触发器 1 年前 |
|
Dante · Django::配置不当:池不支持持久连接 1 年前 |
|
YouLocalRUser · 删除重复行,保留第一行 1 年前 |