我收到此错误:
线程1:EXC_BAD_INSTRUCTION(代码= EXC_I386_INVOP,子代码= 0x0)
我该如何解决?该代码正常工作,但是在计算器中,当我单击唯一的相等按钮时,它给出了该错误。
@IBAction func equals(sender: AnyObject) {
secondNumber = Screen.text!.toInt()! // here it shows an error which is "Thread 1:EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)"
if operation == "+"{
result = firstNumber + secondNumber
}
else if operation == "-" {
result = firstNumber - secondNumber
}
else if operation == "x" {
result = firstNumber * secondNumber
}
else {
result = firstNumber / secondNumber
}
Screen.text = "\(result)"
}
最佳答案
这条线
secondNumber = Screen.text!.toInt()!
表示:获取Screen对象,获取text属性,如果不存在,请崩溃,然后将文本转换为整数,如果不存在,请崩溃。
那就是!意思是:它的意思是“我确定这个东西存在,所以请崩溃”。这就是它所做的。