1
我有以下阵列:如何将变量的值(字符串)设置为等于数组中的键?
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]
但我发现了以下错误:
Cannot subscript a value of type '[String : Array]' with an index of type 'Int'
这是没有意义的,因为firstCardString:string
的类型是明确string
,不是int。
好的。在你的回答中,什么是“卡片”意味着代表? – TheDudeGuy
这是字符串插值将随机整数转换为字符串并撰写字典键 –