我经常遇到错误,即使我尝试投射输入文本字段,错误也不会消失。这是我的代码:
@IBOutlet weak var fingerNumbersInputField: UITextField!
@IBAction func guessButton(_ sender: Any) {
let randomFingers = arc4random_uniform(6)
if randomFingers == Int(fingerNumbersInputField.text!) {
}
}
@IBOutlet weak var resultField: UILabel!
这是我在Xcode中遇到的错误:
Screenshot of the Error in Xcode CLICK HERE
表达式类型'@lvalue String?'没有更多上下文就变得模棱两可
此代码有什么问题?请帮忙。 谢谢。
答案 0 :(得分:0)
您需要
if randomFingers == Int(fingerNumbersInputField.text!)! {
}
或省钱
if let value = Int(fingerNumbersInputField.text!) , value == randomFingers {
/////
}
答案 1 :(得分:0)
arc4random_uniform(6)
返回UInt32
,随后您尝试比较UInt32
和Int?
,这对于编译器来说实在太多了。
如果您使用类似Int.random(0..<6)
这样的现代随机API,一切都应该没问题
let randomFingers = Int.random(in: 0..<6)
if randomFingers == Int(fingerNumbersInputField.text!) { }