我正在尝试将一个双倍增加到一个整数,
var numberOfBottles = totalVolume / volumeEachBottles
例如numberOfBottles = 275.0 / 250.0
这会给我1.1
,我需要它来围绕2
答案 0 :(得分:37)
尝试:
var numberOfBottles = totalVolume / volumeEachBottles
numberOfBottles.rounded(.up)
或
numberOfBottles.rounded(.down)
答案 1 :(得分:12)
有一个名为ceil
的内置全局函数,它正是这样做的:
var numberOfBottles = ceil(totalVolume/volumeEachBottles)
这会将2
作为Double
返回。
ceil
实际上已在math.h
中声明并记录在here in the OS X man pages。它几乎肯定比任何其他方法更有效。
即使您需要Int
作为最终结果,我也会先计算ceil
这样的结果,然后在Int
的结果上使用ceil
构造函数计算。
答案 2 :(得分:1)
import Foundation
var numberOfBottles = 275.0 / 250.0
var rounded = ceil(numberOfBottles)
答案 3 :(得分:1)
如果您正在寻找将其四舍五入并在UI中使用它,那么这可能很有用。只需将其添加为文件或自己文件中的最后一项:
extension Double {
func roundToInt() -> Int{
return Int(Darwin.round(self))
}
}
如果你喜欢在文本标签中使用它,请使用它:
currentTemp.text = "\(weatherData.tempCelsius.roundToInt())"
或者将其打印为Int:
print(weatherData.tempCelsius.roundToInt())