【问题标题】:Swift on Xcode - Array index with multiple valuesXcode 上的 Swift - 具有多个值的数组索引
【发布时间】:2016-12-26 04:12:07
【问题描述】:

如何将多个Strings 添加到Array 的一个索引中?我有:

var cardNamesArray:[String] = ["card5", "card6", "card7", "card8", "card9", "card10", "card11", "card12"]

card5 在索引 0 处,card6 在索引 1 处,card7 在索引 2 处,依此类推。我想将 card5、card6、card7 和 card 8 分配给索引 0,并将卡 9、card 10、card11、card12 分配给索引 1。有人可以告诉我如何做到这一点吗?

有没有什么方法可以做到这一点,而无需制作数组数组并将卡片分配给索引值?

var cardNamesArray:[[String]] = [["card5", "card6", "card7", "card8"], ["card9", "card10", "card11", "card12"]]

创建一个数组数组后,我只有 2 个我需要的索引,但是我似乎无法稍后在 Xcode 中调用 String。我有一个 UIButton 随机化一个数字,我想将该数字连接到一张由其中一张卡片表示的图像,但我希望其中四张具有相同的值。

var firstRandomNumber: Int = Int(arc4random_uniform(2))

我在这条线上遇到了一个错误,说

"无法将值类型'[string]'转换为指定类型'String'。

var firstCardString: String = self.cardNamesArray[firstRandomNumber]

但是,当我在上面的第一行中将 [ ] 放在 String 周围时,它会运行,并且在下一行出现错误提示

self.firstCardImageView.image = UIImage(named: firstCardString)

“无法将值类型 '[string]' 转换为预期的参数类型 'string'。”

非常感谢任何帮助!谢谢。

【问题讨论】:

    标签: ios arrays swift xcode indexing


    【解决方案1】:

    你需要生成两次随机数,第一个用于 Array of Array,第二个用于你的卡片。

    var cardNamesArray:[[String]] = [["card5", "card6", "card7", "card8"], ["card9", "card10", "card11", "card12"]]
    var firstRandomNumber: Int = Int(arc4random_uniform(2))
    var secondRandomNumber: Int = Int(arc4random_uniform(4))
    var firstCardString: String = self.cardNamesArray[firstRandomNumber][secondRandomNumber]
    self.firstCardImageView.image = UIImage(named: firstCardString)
    

    【讨论】:

      【解决方案2】:

      您尝试获取字符串,但您的对象是您之前声明的数组

      var cardNamesArray:[[String]] = [["card5", "card6", "card7", "card8"], ["card9", "card10", "card11", "card12"]]
      

      把你的代码改成这个

      var firstObjFromArray: Array = self.cardNamesArray[0]
      var firstCardString: String = firstObjFromArray[firstRandomNumber]
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-07-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-08-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多