實例屬性
capacity
數組在不分配新存儲的情況下可以包含的元素總數。
聲明
var capacity: Int { get }
詳述
每個數組都會保留特定數量的內存來保存其內容。當您向數組添加元素並且該數組開始超出其保留容量時,該數組會分配更大的內存區域並將其元素複製到新存儲中。新存儲是舊存儲大小的倍數。這種指數增長策略意味著追加一個元素在恒定時間內發生,平均許多追加操作的性能。觸發重新分配的追加操作有性能成本,但隨著陣列變大,它們發生的頻率越來越低。
下麵的示例從一個數組字麵量創建一個整數數組,然後附加另一個集合的元素。在追加之前,數組會分配足夠大的新存儲空間來存儲結果元素。
var numbers = [10, 20, 30, 40, 50]
// numbers.count == 5
// numbers.capacity == 5
numbers.append(contentsOf: stride(from: 60, through: 100, by: 10))
// numbers.count == 10
// numbers.capacity == 10
可用版本
iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+
相關用法
- Swift ArraySlice contains(where:)用法及代碼示例
- Swift ArraySlice contains(_:)用法及代碼示例
- Swift ArraySlice compactMap(_:)用法及代碼示例
- Swift ArraySlice starts(with:)用法及代碼示例
- Swift ArraySlice reduce(_:_:)用法及代碼示例
- Swift ArraySlice prefix(through:)用法及代碼示例
- Swift ArraySlice prefix(upTo:)用法及代碼示例
- Swift ArraySlice randomElement()用法及代碼示例
- Swift ArraySlice map(_:)用法及代碼示例
- Swift ArraySlice reversed()用法及代碼示例
- Swift ArraySlice append(contentsOf:)用法及代碼示例
- Swift ArraySlice removeSubrange(_:)用法及代碼示例
- Swift ArraySlice shuffled()用法及代碼示例
- Swift ArraySlice suffix(from:)用法及代碼示例
- Swift ArraySlice lastIndex(of:)用法及代碼示例
- Swift ArraySlice prefix(_:)用法及代碼示例
- Swift ArraySlice joined()用法及代碼示例
- Swift ArraySlice insert(contentsOf:at:)用法及代碼示例
- Swift ArraySlice sorted(by:)用法及代碼示例
- Swift ArraySlice init(arrayLiteral:)用法及代碼示例
- Swift ArraySlice reserveCapacity(_:)用法及代碼示例
- Swift ArraySlice isEmpty用法及代碼示例
- Swift ArraySlice enumerated()用法及代碼示例
- Swift ArraySlice firstIndex(of:)用法及代碼示例
- Swift ArraySlice removeAll(where:)用法及代碼示例
注:本文由純淨天空篩選整理自apple.com大神的英文原創作品 ArraySlice capacity。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。