【问题标题】:Dividing NumberFormatter .currency to convert a price into quarterly price除以 NumberFormatter .currency 以将价格转换为季度价格
【发布时间】:2019-01-23 05:03:22
【问题描述】:

我有一个 NumberFormatter() ,其中 numberStyle 为 .currency。我正在尝试通过将其除以 4 将其转换为季度价格。

let formatter = NumberFormatter()
formatter.numberStyle = .currency
formatter.locale = product.priceLocale // product is a SKProduct object.

试图除以 4:

let quarter = NSDecimalNumber(value: 4)
let quarterly = formatter.string(from: product.price / quarter)

给出错误:

'NSDecimalNumber' 不能隐式转换为 'Decimal';您的意思是使用 'as' 来显式转换吗?

我也试过了:

let quarterly = formatter.string(from: (product.price as Decimal) / quarter)

给出错误:

表达式类型 'NSDecimalNumber' 在没有更多上下文的情况下是模棱两可的

如何将 NumberFormatter.currency 除以 4?

【问题讨论】:

    标签: swift currency nsnumberformatter


    【解决方案1】:

    因为productSKProduct,那么priceNSDecimalNumber。该类提供了dividing 方法。

    let quarterly = formatter.string(from: product.price.dividing(by: quarter))
    

    【讨论】:

    • 效果很好。比我采用的方法干净得多。感谢@rmaddy 的帮助。
    猜你喜欢
    • 2023-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-14
    相关资源
    最近更新 更多