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

时间:2018-03-01 08:26:44

标签: swift xcode ios11 computed-properties

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

 private var displayValue : Double {
            get {
               return Double(display.text!)!
            }
            set {
                display.text = String(newValue)
            }
        }

1 个答案:

答案 0 :(得分: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)
    }
}