当我开始编写我的第一个应用时,我毫不犹豫地使用 NSNumber 来处理货币值。 然后我想,也许 c 类型足以处理我的值。 然而,我在 iPhone SDK 论坛上被建议使用 NSDecimalNumber,因为它具有出色的舍入功能。
由于本人非数学家出身,因此我认为小数/指数的范例可能有些多余;但是,在搜索时,我发现关于货币/货币的大多数讨论都涉及到NSDecimalNumber。
请注意,我正在开发的应用程序将被国际化,因此按分计算金额的选项并不真正可行,因为货币结构在很大程度上取决于使用的区域设置。
我有90%的把握需要使用NSDecimalNumber,但由于在网上没有明确的答案(例如:“如果您处理货币,则使用NSDecimalNumber!”),所以我想在这里问一下。也许答案对于大多数人是显而易见的,但在重构我的应用程序之前,我想要确保。
说服我 :)