【发布时间】:2023-03-22 05:18:01
【问题描述】:
我有以下数组:
var deckArray = [
"card1": ["rank","suit"],
"card2": ["rank","suit"],
"card3": ["rank","suit"],
"card4": ["rank","suit"],
"card5": ["rank","suit"],
"card6": ["rank","suit"],
"card7": ["rank","suit"],
]
为了简洁起见,我剪掉了数组的其余部分,但整个东西包含 52 个对象。我想要做的是从 1 到 52 中选择一个随机数,并将 firstCardString 属性设置为等于数组中与该索引对应的任何键。
例如,如果它生成的随机数是5,它会将firstCardString 设置为等于card5。
我试过这样做:
let firstRandomNumber = Int(arc4random_uniform(52))
let firstCardString:String = self.deckArray[firstRandomNumber]
但我收到以下错误:
不能用“Int”类型的索引为“[String : Array]”类型的值下标
这没有意义,因为firstCardString:string 明确属于string 类型,而不是int。
【问题讨论】: