"致命错误:数组索引超出范围swift"

时间:2015-10-02 07:26:04

标签: arrays swift generics

代码是:

DateTimeOfInsert >= '20150901' and DateTimeOfInsert < '20151001'

class Singleton {

    class var sharedInstance:Singleton {
        struct Static {
            static var instance:Singleton? = nil
            static var token:dispatch_once_t = 0
        }
        dispatch_once(&Static.token)
            {
                Static.instance = Singleton ()
        }
        return Static.instance!
    }

    var prayerArray = Array<PrayerSound>()

}

1 个答案:

答案 0 :(得分:1)

您正在使用行prayerArrayvar prayerArray = Array<PrayerSound>()初始化为空数组。因此它没有元素。您必须将其初始化为具有一定长度,或者将项目附加到其中。我认为你想做的就是初始化它以拥有足够的元素来接受你的指数。像

这样的东西

var prayerArray = Array<PrayerSound>(count:64, repeatedValue: somePrayer)

或者,您可以将其声明为可选项数组,并将它们设置为nil

var prayerArray = Array<PrayerSound?>(count:64, repeatedValue: nil)