如何迅速防止Float的科学记数法
我有以下代码:
rangeSlider.minLabel?.text = "\(rangeSlider.lowerValue)"
标签文本是1e + 07,但我想成为100000000。
我应该如何禁用科学记数法?
设置你的号码风格:
let numberFormatter = NSNumberFormatter() numberFormatter.numberStyle = NSNumberFormatterStyle.DecimalStyle let finalNumber = numberFormatter.numberFromString("\(rangeSlider.lowerValue)") print(finalNumber!)
随着简单的1e + 07的转换
let numberFormatter = NSNumberFormatter() numberFormatter.numberStyle = NSNumberFormatterStyle.DecimalStyle let finalNumber = numberFormatter.numberFromString("\(1e+07)") print(finalNumber!)
输出:
千万
希望这可以帮助。
另一种方法是使用String(format:)
,如果你有Foundation
导入:
例:
import Foundation // this comes with import UIKit or import Cocoa let f: Float = 1e+07 let str = String(format: "%.0f", f) print(str) // 10000000
在你的情况下:
rangeSlider.minLabel?.text = String(format: "%.0f", rangeSlider.lowerValue)