我需要在我的应用程序中使用大数字来实现精度,浮点数或双精度是不够的。我也有 int 和 float 数字,我必须对它们进行操作。
我认为 NSDecimalNumber 对我需要的精度很有好处,但我想对其他类型的数字进行运算,这是一个复杂的公式。所以当你有很多东西时,我看起来不适合使用这个类来做复杂的公式(使用函数 decimalWith... 或 decimalBy... 太复杂了)。
有谁知道使用什么来轻松操作大数字,并使用不同类型(浮点数、十进制、整数)对它们进行操作?
谢谢你。
我需要在我的应用程序中使用大数字来实现精度,浮点数或双精度是不够的。我也有 int 和 float 数字,我必须对它们进行操作。
我认为 NSDecimalNumber 对我需要的精度很有好处,但我想对其他类型的数字进行运算,这是一个复杂的公式。所以当你有很多东西时,我看起来不适合使用这个类来做复杂的公式(使用函数 decimalWith... 或 decimalBy... 太复杂了)。
有谁知道使用什么来轻松操作大数字,并使用不同类型(浮点数、十进制、整数)对它们进行操作?
谢谢你。
NSDecimalNumbers
只是NSDecimal
结构的包装器,它有一堆有用的操作函数,而不需要分配新对象。
我已经使用了一些,并且对那些内置的内容提出了一些其他有用的补充:https ://github.com/davedelong/DDMathParser/blob/master/DDMathParser/_DDDecimalFunctions.m
我会推荐使用NSDecimal
s ,除非你能想出一个令人信服的理由不这样做。
多谢你们!我终于使用了对我来说足够的双类型。我很困惑,因为我用NSLog
with%f
来打印我的号码,这不是我想要的。相反,我用%e
科学计数法检查数字是正确的,而且它是正确的。所以我只是使用双数进行所有计算,它正在工作。