我有这样一个表达式,它会返回一个 UInt32
值:
let randomLetterNumber = arc4random()%26
我希望能够在这个if语句中使用这个数字:
if letters.count > randomLetterNumber{
var randomLetter = letters[randomLetterNumber]
}
问题在于控制台显示了这个:
Playground execution failed: error: <REPL>:11:18: error: could not find an overload for '>' that accepts the supplied arguments
if letters.count > randomLetterNumber{
~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
问题在于无法将UInt32
与Int
进行比较。我想将randomLetterNumber
强制转换为Int
。我尝试过:
let randomLetterUNumber : Int = arc4random()%26
let randomLetterUNumber = arc4random()%26 as Int
这两个都会导致找不到接受所提供的参数的“%”的重载。
我该如何转换该值或在if语句中使用它?