我无法将像 9.471347923322231e+18 这样的指数数字转换为 nsnumber。有谁知道如何反过来做?谢谢。
问问题
342 次
1 回答
1
对于指数数,您应该使用:
NSDecimalNumber *number = [NSDecimalNumber decimalNumberWithMantissa:12345
exponent:-3
isNegative:YES];
或者如果你想从 NSString 获取它:
+ (NSDecimalNumber *)decimalNumberWithString:(NSString *)numericString locale:(NSDictionary *)locale;
例如:
NSString *stringNumber = @"9.471347923322231e+18";
NSDictionary *locale = [NSDictionary dictionaryWithObject:@"." forKey:NSLocaleDecimalSeparator];
NSDecimalNumber *number = [NSDecimalNumber decimalNumberWithString:stringNumber locale:locale];
于 2013-10-22T14:57:21.190 回答