【问题标题】:Array index out of range [swift]数组索引超出范围 [swift]
【发布时间】:2017-01-05 00:52:33
【问题描述】:

我有一组字符串,我将其拆分并保存到一个数组中,并尝试使用 api 作为参数对其进行循环,但它会因错误而崩溃

索引超出范围

为什么?需要帮助请

【问题讨论】:

  • 请在文本中粘贴代码,没有图像
  • for i in qrCodeArray.indices { }
  • @LeoDabus 那么我如何将它全部保存到一个数组中呢?

标签: arrays swift


【解决方案1】:

您应该了解数组的基本概念。显示此错误是因为您请求的项目在数组中不可用。

for i in 0...qrCoderArrau.count - 1 {

 }

【讨论】:

    【解决方案2】:

    错误是因为您试图访问数组中索引大于其大小 - 1 的元素。

    【讨论】:

      【解决方案3】:

      您的qrCodeArray 数组为空,您还需要将for loop 减去qrCodeArray 的计数。所以像这样改变你的for循环。

      for i in 0..<qrCodeArray.count {
      
      }
      

      如果你的qrCoderArray.count 是0,它将执行for循环。

      【讨论】:

        【解决方案4】:

        为避免这些错误(数组的最后一个索引是count-1),请始终使用

        for qrCode in qrCodeArray { ... 
        

        而不是索引循环,即使你需要索引也可以使用

        for (index, qrCode) in qrCodeArray.enumerate() { ...
        

        【讨论】:

          【解决方案5】:

          我认为最好的解决方案是 foreach 在这些情况下

          for qr in qrCoderArray {
              ...
          }
          

          【讨论】:

            猜你喜欢
            • 2016-11-10
            • 1970-01-01
            • 2017-05-14
            • 1970-01-01
            • 2018-05-07
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多