如何将 NSDecimalNumber 转换为 NSNumber
How to convert NSDecimalNumber to NSNumber
如何将 NSDecimalNumber 转换为 NSNumber?我在一个方法中创建了一个 NSDecimalNumber,该方法必须 return 一个 NSNumber 对象,稍后可以使用 [ ... isKindOfClass:[NSNumber class]]
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
id rn = [self haveToBeNSNumber];
if ([rn isKindOfClass:[NSNumber class]]) {
NSLog(@"It's NSNumber class object");
}
return YES;
}
- (NSNumber *)haveToBeNSNumber {
NSDecimalNumber *dNumber = [NSDecimalNumber decimalNumberWithString:@"123.22"];
return dNumber;
}
你有什么问题?
正如@dan 所述 NSDecimalNumber
是一个 NSNumber
,即 NSDecimalNumber
响应 NSNumber
.
的所有方法
如果需要,您可以转换 return 类型:
return (NSNumber *)dNumber;
四舍五入和精度:NSDecimalNumber
是数值的精确十进制表示,NSNumber
是数值的接近二进制表示,大多数不是整数的十进制数不能用二进制(基数 2)的完整精度。
您可以使用 NSNumberFormatter
控制显示格式。 NSLog使用了description
的方式来显示和格式化苹果开发者喜欢的数字
如何将 NSDecimalNumber 转换为 NSNumber?我在一个方法中创建了一个 NSDecimalNumber,该方法必须 return 一个 NSNumber 对象,稍后可以使用 [ ... isKindOfClass:[NSNumber class]]
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
id rn = [self haveToBeNSNumber];
if ([rn isKindOfClass:[NSNumber class]]) {
NSLog(@"It's NSNumber class object");
}
return YES;
}
- (NSNumber *)haveToBeNSNumber {
NSDecimalNumber *dNumber = [NSDecimalNumber decimalNumberWithString:@"123.22"];
return dNumber;
}
你有什么问题?
正如@dan 所述 NSDecimalNumber
是一个 NSNumber
,即 NSDecimalNumber
响应 NSNumber
.
如果需要,您可以转换 return 类型:
return (NSNumber *)dNumber;
四舍五入和精度:NSDecimalNumber
是数值的精确十进制表示,NSNumber
是数值的接近二进制表示,大多数不是整数的十进制数不能用二进制(基数 2)的完整精度。
您可以使用 NSNumberFormatter
控制显示格式。 NSLog使用了description
的方式来显示和格式化苹果开发者喜欢的数字