如果要达到给定数量的有效数字(类似于stringWithFormat(“。5g”)!),我想使用从十进制到科学的自动(!)从十进制转换为双精度字符串。
例子:
55555 -> "55555"
55555.55 -> "55556"
555555.55 -> "5.5556E+05"
我不知道如何使用“ NSNumberFormatter()。stringFromNumber”来做到这一点?
你能帮助我吗?
谢谢!
最佳答案
到目前为止,这是我的解决方案(有人知道吗?):
extension NSNumberFormatter {
func autoStringFromNumber (number: Double) -> String? {
if abs(number) >= Double(10.power(maximumSignificantDigits)) {
self.numberStyle = NSNumberFormatterStyle.ScientificStyle
}else{
self.numberStyle = NSNumberFormatterStyle.DecimalStyle
}
return self.stringFromNumber(number)
}
}
关于ios - NSNumberFormatter等效于stringWithFormat,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31534987/