删除double的小数部分而不将其转换为swift中的Int

问题描述 投票:1回答:1

我在ios中制作一个计算器应用程序,我有一个计算属性,如下所示。我想显示例如让显示值为整数表示3.0我希望它显示为3,当显示值不是像这样的整数时,它应该保持相同。 display.text是用于显示计算器App的值的标签App我有一个代码块,如下所示:

 private var displayValue : Double {
            get {
               return Double(display.text!)!
            }
            set {
                display.text = String(newValue)
            }
        }
swift xcode ios11 computed-properties
1个回答
2
投票

我推荐NumberFormatter,这个例子创建了一个可重用的格式化程序。

let decimalFormatter : NumberFormatter = {
    let formatter = NumberFormatter()
    formatter.numberStyle = .decimal
    return formatter
}()

private var displayValue : Double {
    get {
        return Double(display.text!)!
    }
    set {
        display.text = decimalFormatter.string(for: newValue)
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.