【发布时间】:2016-02-04 16:58:16
【问题描述】:
以下方法使用两个变量计算百分比。
func casePercentage() {
let percentage = Int(Double(cases) / Double(calls) * 100)
percentageLabel.stringValue = String(percentage) + "%"
}
上述方法运行良好,但 case = 1 和 call = 0 除外。 这给出了一个致命错误:浮点值不能转换为 Int,因为它要么是无限的要么是 NaN
所以我创建了这个解决方法:
func casePercentage() {
if calls != 0 {
let percentage = Int(Double(cases) / Double(calls) * 100)
percentageLabel.stringValue = String(percentage) + "%"
} else {
percentageLabel.stringValue = "0%"
}
}
这不会出错,但在其他语言中,您可以使用 .isNaN() 方法检查变量。这在 Swift2 中是如何工作的?
【问题讨论】:
-
@Cosyn 我读了那个链接,但作为一个 n00b 对我来说没有任何意义。
标签: swift2