我尝试将小数存储在CoreData中,并通过Swift 3中的货币格式化程序运行它。这是我要使用的内容:

var currencyFormatter = NumberFormatter()
currencyFormatter.usesGroupingSeparator = true
currencyFormatter.numberStyle = NumberFormatter.Style.currency
// localize to your grouping and decimal separator
currencyFormatter.locale = NSLocale.current
var priceString = currencyFormatter.stringFromNumber(NSNumber(totalAmount))


其中totalAmount是我用于CoreData的小数。

但是。尝试将十进制转换为NSNumber()时出现此错误

Argument labels '(_:)' do not match any available overloads

最佳答案

stringFromNumber重命名为string(from:),例如

var priceString = currencyFormatter.string(from: NSNumber(totalAmount))


但您不必转换为NSNumber

var priceString = currencyFormatter.string(for: totalAmount)

10-08 02:46