我想要做的是,有一個數組變量,每當它被調用時都會被初始化。爲此,我在聲明它時使用了lazy
關鍵字。 但是,我有一個清晰的方法,我想清除數組的內容(在時間複雜度爲的恆定值),對此我沒有對數組執行任何操作。這給了我一個錯誤:Cannot assign a value of type NilLiteralConvertible to a value of type [Int]
。我如何解決它?Swift:無法將數組放到零
class Array
{
lazy var elementsInArray = [Int]()
func add(element: Int) {
elementsInArray.append(element)
}
func clear() {
elementsInArray = nil
}
}
你知道嗎,你的數組不是可選的,所以它不能是零? – TheCodingArt
另外,只需使用removeAll()函數......它就是出於這個確切原因(在這種情況下,對於大多數場景中的性能來說,這絕對是可以忽略的)。 – TheCodingArt
如果你打算進行微觀性能考慮,使數組可選可能會增加每次訪問的開銷。 – Thilo