从Swift 3中的字典中的数组中检索随机项

时间:2017-09-13 07:33:07

标签: arrays swift dictionary arc4random

我一直试图破解这个问题几个月,终于到了我觉得我需要求助的地步。

最终我试图随机化从我的字典中返回的密钥,然后随机化从其值返回的值。

我的字典是:

var kbDirectory: [String: [String]] = ["Squat": ["4 x 10", "3 x 15", "3 x 20"],
                                   "Deadlift": ["4 x 10", "3 x 15", "3 x 20"],
                                   "2 Handed Swing":["4 x 10", "3 x 15", "3 x 20"],
                                   "Press Up":["4 x 10", "3 x 15", "3 x 20"],
                                   "Pull up":["4 x 10", "3 x 15", "3 x 20"]]

我多次尝试并试图从各种来源学习,但似乎无法做到正确。任何答案或指向正确的搜索/学习方向将不胜感激。

干杯!

1 个答案:

答案 0 :(得分:0)

let randomIndex = Int(arc4random_uniform(UInt32(kbDirectory.count)))
let dictValues = Array(kbDirectory.values)
let randomArray = dictValues[randomIndex]
let randomArrayIndex = Int(arc4random_uniform(UInt32(randomArray.count)))
let randomValue = randomArray[randomArrayIndex]