Java - BigDecimal 太多?
有关详细信息,请参阅我的其他问题,此处。所以无论如何,我在我的应用程序中使用 BigDecimals 来表示货币(它扣除了降价百分比并增加了销售税),但似乎如果我使用 BigDecimals 来表示价格,那么一切都需要是 BigDecimals。是否可以使用 BigDecimal 作为降价百分比字段(而不是浮点数)以及 PST 和 GST 常量(销售税,0.08 和 0.05)?哦,还有,你认为我应该以百分比还是小数形式存储降价字段?无论哪种方式,我都必须将其转换为另一种方式进行显示,因为我显示 p / 100 = d。小计是指税前总成本,对吗?
谢谢!!
For more info, see my other question, here. So anyway, I'm using BigDecimals to represent currency in my application (it deducts a markdown percentage and adds sales tax), but it seems that If I use a BigDecimal for the price, everything needs to be BigDecimals. Is it OK to use a BigDecimal for the markdown percentage field (instead of a float), and also for the PST and GST constants (sales tax, 0.08 & 0.05)? Oh and also, do you think I should store the markdown field in percentage or decimal? Either way, I would have to convert it to the other for display, since I show p / 100 = d. And subtotal means the total cost before tax, right?
Thanks!!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
不同的行业对此会有不同的标准。例如,在金融领域,即使只显示 2 或 3,计算小数点后 5 位甚至 8 位也是很常见的。BigDecimals
是首选,因为它对于乘法、加法和减法完全准确(除法通常不是问题)当涉及到货币金额时)。
Different industries will have different standards for this. In finance, for example, it's common to do calculations to 5 or even 8 decimal places even if you're only display 2 or 3.
BigDecimals are preferred for being completely accurate for multiplication, addition and subtraction (division isn't normally an issue when it comes to currency amounts).
是的,没关系 - 除非你有一个特定的问题 - 内存使用或其他问题 - 坚持使用 BigDecimals。
您可能会发现 NumberFormat 对于格式化很有用。
Yes its fine - unless you have a specific problem - memory usage or something - stick with BigDecimals.
You might find the NumberFormat useful for formatting.