我制作了一个计算器,并且在我按下操作员按钮后,我试图将=
放在顶部,但每次我像这样运行时,它会崩溃。
var equal = Double("=")
var DisplayValue: Double? {
get {
return NSNumberFormatter().numberFromString(display.text!)!.doubleValue
}
set {
display.text = "\(newValue)" + equal userstyping = false
}
}
答案 0 :(得分:1)
我不确定你想用这条线完成什么:
var equal = Double("=")
但是," ="不能被解释为零,它实际上相当于:
var equal : Double? = nil
那时我觉得你执行时可能会崩溃:
display.text = "\(newValue)" + equal userstyping = false
虽然除非你确实有以下情况,否则它不会被编译,因为它真的不可能:
display.text = "\(newValue)" + equal
userstyping = false
即使那不能实际编译,因为你不能添加String和Double?
无论哪种方式,我试着看一下,如果它在运行时进行编译和失败,我们就没有你的实际代码。