我意识到NSDecimalNumber继承自NSNumber。
但是,我正在努力弄清楚如何从NSNumber初始化NSDecimalNumber或如何将NSNumber转换为NSDecimalNumber。
我试过了
NSDecimalNumber* d = [aNumber copy];
其中aNumber
是一个无效的NSNumber对象。
我错过了什么吗?
感谢。
答案 0 :(得分:78)
你可以这样做:
NSDecimalNumber *decNum = [NSDecimalNumber decimalNumberWithDecimal:[aNumber decimalValue]];
答案 1 :(得分:12)
所以:
NSNumber * number = [NSNumber numberWithInt:10];
NSDecimalNumber *d = [NSDecimalNumber decimalNumberWithDecimal:[number decimalValue]];
在Swift中
let number = NSNumber(int: 10)
let dec = NSDecimalNumber(decimal: number.decimalValue)