如果将ActiveRecord列类型指定为十进制,Rails将以ruby BigDecimal对象的形式返回该数据库值。
我的问题是,在处理这些字段并对它们执行额外的数学处理时,我应该始终在计算中使用BigDecimal值还是可以使用浮点值。我不知道在相同的计算中混合BigDecimal值和浮点值是否是一个好做法。
混合示例: BigDecimal.new('12.43') / 4.2
相同类型的示例: BigDecimal.new('12.43') / BigDecimal.new('4.2')
我之所以问这个问题,是因为我有点不愿使用浮点数,因为我需要十进制的精确性。0.1 + 0.7不等于使用浮点数的0.8。
发布于 2010-06-23 21:23:54
既然你
...一支不愿使用浮标的小枪..。
使用BigDecimal。工作很好
https://stackoverflow.com/questions/3105083
复制相似问题