我一直在阅读Apple开发者文档,看来它没有为课程NumberFormatter
更新,他们说它从NSNumberFormatter
换成了NumberFormatter
。
我在Swift 3中找到了这个类的一些功能,但我找不到如何设置maximumFractionDigits
。
当我有像这样的Double 0.123456789时,我想把它转换成一个只有4个小数位的字符串,例如0.1234。
答案 0 :(得分:3)
如果您不希望它向上舍入,而是始终向下舍入,请使用.floor
或.down
:
let foo = 0.123456789
let formatter = NumberFormatter()
formatter.maximumFractionDigits = 4
formatter.roundingMode = .down
let string = formatter.string(from: NSNumber(value: foo))
如果您想要传统的舍入格式,只需省略.roundingMode
,这将导致"0.1235"
。
有关详细信息,请参阅NumberFormatter
reference文档。