我正在尝试创建一个if else语句。如果randomNumber等于标签的文本,那么我想向CorrectLabel
添加1。如果它们彼此不相等,那么我想要向IncorrectLabel
添加1。这是我的代码:
@IBAction func checkButton(sender: UIButton) {
if ( "\(randomImageGeneratorNumber)" == "\(currentCountLabel.text)"){
currectAmountCorrect += 1
CorrectLabel.text = "\(currectAmountCorrect)"
}else if ("\(randomImageGeneratorNumber)" != "\(currentCountLabel.text)"){
currentAmountIncorrect += 1
IncorrectLabel.text = "\(currentAmountIncorrect)"
}
}
我在"我得到一个错误,如果"声明行说"操作员的模糊使用'!=' &#34 ;.我不确定这个错误意味着什么或如何解决它。
此错误意味着什么以及如何解决?
答案 0 :(得分:1)
你不应该那样比较。只需使用.toInt()
将labeltext强制转换为int并将其比较为:
var currentCount = currentCountLabel.text?.toInt()
if randomImageGeneratorNumber == currentCount {
currectAmountCorrect += 1
CorrectLabel.text = "\(currectAmountCorrect)"
} else {
currentAmountIncorrect += 1
IncorrectLabel.text = "\(currentAmountIncorrect)"
}
没有必要将您的价值放入“”。
答案 1 :(得分:0)
首先,您不需要进行两次比较。您的代码看起来像
if true {
...
} else if false {
...
}
而且,是的,int比较会更好:
if let textAmount = currentCountLabel.text where randomImageGeneratorNumber == textAmount.toInt() {
currectAmountCorrect += 1
CorrectLabel.text = "\(currectAmountCorrect)"
} else {
currentAmountIncorrect += 1
IncorrectLabel.text = "\(currentAmountIncorrect)"
}