我有一个对象,我想从它中选择一个随机值,除了第一个值。我使用的代码是:
algScramble.text = OLLScrambleData.DemoOLLScrambleList[selectedCases[scrambleNumber]].randomElement(scrambleNumber)我知道.randomElement(scrambleNumber)是无效的。
OLLScrambleData.DemoOLLScrambleList被初始化为:
init(id : Int, scramble1 : String, scramble2 : String, scramble3 : String, scramble4 : String, scramble5 : String, scramble6 : String, scramble7 : String, scramble8 : String){我想选择从scramble1到scramble 8的任何东西,但不想选择id。
我该怎么做?
发布于 2019-04-17 14:09:02
我知道标题询问如何将数据从字典中提取出来,但您提供的代码表明,您实际上正在尝试与一个将置乱对象作为属性的对象进行交互:
init(id : Int,scramble1 : String,scramble2 : String,scramble3 : String,scramble4 : String,scramble5 : String,scramble6 : String,scramble7 : String,scramble8 : String){
如果我只是误解了您的代码,请告诉我,如果是这样的话,您也可以这样做:
func getRandom() -> String {
int random = makeRandomNumber() // However you want to make a random number between 1 and 8
switch random {
case 1:
return scramble1
case 2:
return scramble2
...
}
}我还要补充的是,如果您实际上试图将ID保存在与您试图从中选择的数据相同的字典中,那么这可能是一个阻碍您的错误。如果要重新构造要处理的对象,以便将ID与其他数据分离开来,因为您不想以同样的方式处理它,那么您就可以摆脱大麻烦,使代码更容易理解和更改。
https://stackoverflow.com/questions/55728275
复制相似问题