ios - Swift 中数组索引超出范围

标签 ios arrays swift indexoutofrangeexception

嗨,我正在尝试以相反的顺序打印数组的元素,但我收到了类似的错误

Array index out of Range.

你们能帮帮我吗?我在下面发布我的代码

import UIKit

class DecimalToBinaryViewController: UIViewController {


@IBOutlet weak var textField: UITextField!

@IBOutlet weak var result: UILabel!


@IBAction func binaryNumber(sender: AnyObject)
{
    var myArray = [Int]()
     var number = textField.text.toInt()
    var num = Int(number!) // for converting optional Int? to Int
    var remainder:Int
   var condition = false
    while condition == false
    {
        remainder = num % 2
        myArray += [remainder]
        num /= 2
        if num == 0
        {
         condition = true
        }
    }
   var size = myArray.count
    for var i = size; i >= 0; i--
    {
     println( myArray[i])
    }


}

最佳答案

swift 中的数组是零索引的。这意味着当数组计数为 X 时,您可以访问的最高索引是 X-1

您应该对您的程序进行此更改

var size = myArray.count - 1

关于ios - Swift 中数组索引超出范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32960605/

相关文章:

iphone - ViewController 屏幕在启动应用程序之前下载数据库

ios - 如何应用适用于 UITableView 和 UICollectionView 的延迟加载

ios - MagicalRecords 通过图像获取在后台线程中持续存在?

jquery - 从键值数组中获取值

javascript - 我正在尝试在 JS 中制作这个随机名称生成器。数组返回未定义?

java - 为什么快速排序的 JDK 实现有堆栈溢出的风险?

swift - 如何在 SpriteKit 游戏中保存游戏进度

ios - Apple-app-site-association 文件未链接到应用程序

xcode - 在框架 header 中找不到 swift 文件

ios - UISlider 作为音频搜索栏在更改时跳转到最大值