我遇到一种情况,我得到一个 NSDecimal,并且我需要一个 NSInteger。我确实知道这是一个非常小的值(这是绝对肯定的)。它不会大于 100。因此将其转换为 NSInteger 就完全没问题,不会发生溢出。
这怎么能做到呢? NSDecimal 中只有一个 -doubleValue 方法。
最佳答案
首先将其转换为 NSDecimalNumber。 NSDecimalNumber 是 NSNumber 的子类,因此您可以使用所有 NSNumber 方法:
NSDecimalNumber *myNSDecimalNumber = [NSDecimalNumber decimalNumberWithDecimal:myNSDecimal];
NSInteger myInt = [myNSDecimalNumber intValue];
关于iphone - 如何将 NSDecimal 值转换为 NSInteger 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2548596/