斯威夫特EXC_BAD_INSTRUCTION错误
问题描述:
所以我得到的错误。斯威夫特EXC_BAD_INSTRUCTION错误
var doorsKnocked = 20
var sales = 0
var avgDoorsKnocked = 45.4
var avgSales = 1.2
if Double(doorsKnocked/sales) < Double(avgDoorsKnocked/avgSales) {
doorsPerSaleTodayLabel.textColor = UIColor(red: 43/255, green: 182/255, blue: 115/255, alpha: 1.0)
}
我认为这与可选项有关,但我不知道该修复。
答
所以才要做的事实,我试图用0来划分为了解决这个问题,我把所有的在“如果”子句中使用的销售线。可能不是最干净的方式,但希望这可以帮助别人。
if sales != 0 {
if Double(doorsKnocked/sales) < Double(avgDoorsKnocked/avgSales) {
doorsPerSaleTodayLabel.textColor = UIColor(red: 43/255, green: 182/255, blue: 115/255, alpha: 1.0)
}
doorsPerSaleTodayLabel.text = "\(Int(round(1*Double((Double(doorsKnocked)/Double(sales))))/1))"
distancePerSaleTodayLabel.text = "\(Double(round(10*(pausedDistanceInMiles/Double(sales)))/10))"
timePerSaleTodayLabel.text = "\(Double(round(10*(timeWorkedInHoursDouble/Double(sales)))/10))"
} else {
}
+0
如果有效,它可以工作。但看看'guard'声明。这将适用于你在这里。 – Shen
也许它必须做一些事情,你被零除:'doorsKnocked/sales'? –