如何在必要时将Float转换为Int?

时间:2016-10-22 06:40:32

标签: swift xcode casting floating-point int

所以,我对swift和Xcode很新,可能会遗漏一些明显的东西,但我做了一些研究,却无法找到答案。 我的代码是:

for number in currentList {  
listPreview.text = "\(listPreview.text!) \(String(number))"      
}

问题是, currentList 中的 Numbers 是Floats。但是,如果我的用户要输入一个不是浮点数的数字,它将显示为:

"UsersNumber".0

我希望它显示为:

"UsersNumber"

但是,如果用户给我的数字是浮点数,比如说... 1.2,我仍然希望它显示为1.2。

是否有某种扩展可以做到这一点?

就像一句if语句

if number.isUselessFloat {
code
}

提前致谢, - 另一个Nooby用户

1 个答案:

答案 0 :(得分:0)

    let number1 = 1.0
    let number2 = 1.2

    let str = String(format: number1 == floor(number1) ? "%.0f":"%.1f", number1)
    print(str)
    //prints 1

    let str2 = String(format: number2 == floor(number2) ? "%.0f":"%.1f", number2)
    print(str2)
    //prints 1.2