致命错误:数组索引超出Swift Xcode6的范围

前端之家收集整理的这篇文章主要介绍了致命错误:数组索引超出Swift Xcode6的范围前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在我的功能中不断收到此错误

我正在尝试读取数组answerRecord中的值.我使用全局var arrayCount,它跟踪我当前指向的索引.

  1. func buttonColourControl(){
  2. switch answerRecord[arrayCount]{
  3. case1: xxxxxxx

我在早期的func中做了一个println,它为var arrayCount返回了一个int 1的值
因此arrayCount不为空.所以它应该能够将数组解释为:

*假设arrayCount现在为1
answerRecord [arrayCount]应解释为answerRecord [1]
如果我错了请纠正我

  1. @IBAction func nextButtonClicked(sender: UIButton) {
  2. arrayCount = ++arrayCount
  3. question.text = spouseQuesion[arrayCount]
  4. controlBackNextButton()
  5. answer1Label.text = spouseAnswer1[arrayCount]
  6. answer2Label.text = spouseAnswer2[arrayCount]
  7. answer3Label.text = spouseAnswer3[arrayCount]
  8. println(arrayCount)
  9. buttonColourControl()
  10. }
@H_301_17@ 假设你有一个包含一个对象的数组:
  1. let arr = ["hello"]

该数组唯一有效的索引是0. arr [0]是合法的. arr [1]不是.该数组有1个元素,但其索引号为0.

对于任何阵列都是如此.每个数组都包含一些元素.它可能是0个元素,在这种情况下,没有索引是合法的.它可能是3个元素,您可以通过索引号0,1和2来引用数组的元素.依此类推.就这样.这些都是规则.您不能使用任何其他索引号,否则您将崩溃.

所以错误信息只是告诉你你犯了这个错误.你有一个数组answerRecord,它有一些元素 – 我不知道有多少,也没关系.然后你使用表达式answerRecord [arrayCount],并且arrayCount的值超出了我刚才解释的范围.这就是你需要知道的全部.错误消息告诉您程序中的错误.现在你可以解决它.

猜你在找的Swift相关文章