相关疑难解决方法(0)

为什么NumberFormatter的字符串(来自:)返回一个可选的?

文档链接

为什么NumberFormatter函数func string(from number: NSNumber) -> String?返回String?而不是StringNumberFormatter这个函数返回的位置是否有特定的输入或状态为零?有时我听说这些不太理想的返回类型来自Objective-C保持文件,这是其中一种情况吗?

ios swift

10
推荐指数
2
解决办法
519
查看次数

NSNumberFormatter numberFromString返回null

这是我的代码

NSNumberFormatter *currencyStyle = [[NSNumberFormatter alloc] init];

    [currencyStyle setFormatterBehavior:NSNumberFormatterBehavior10_4];
    [currencyStyle setNumberStyle:NSNumberFormatterCurrencyStyle];

    NSNumber *amount = [[NSNumber alloc] init];

    NSLog(@"the price string is %@", price);

    amount = [currencyStyle numberFromString:price];

    NSLog(@"The converted number is %@",[currencyStyle numberFromString:price]);
    NSLog(@"The NSNumber is %@", amount);

    NSLog(@"The formatted version is %@", [currencyStyle stringFromNumber:amount]);

    NSLog(@"--------------------");
    self.priceLabel.text = [currencyStyle stringFromNumber:amount]; 

    [amount release];
    [currencyStyle release];
Run Code Online (Sandbox Code Playgroud)

这是日志吐出的内容

价格字符串是5转换后的数字是(null)NSNumber是(null)格式化的版本是(null)

我错过了什么吗?

编辑:更新的代码

NSNumberFormatter *currencyStyle = [[NSNumberFormatter alloc] init];
    [currencyStyle setFormatterBehavior:NSNumberFormatterBehavior10_4];
    [currencyStyle setNumberStyle:NSNumberFormatterCurrencyStyle];

    NSNumber *amount = [currencyStyle numberFromString:price];

    NSLog(@"the price string is %@", price);
    NSLog(@"The …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c nsnumber nsnumberformatter ios

3
推荐指数
1
解决办法
1万
查看次数

标签 统计

ios ×2

iphone ×1

nsnumber ×1

nsnumberformatter ×1

objective-c ×1

swift ×1