跳到主要内容

Swift数组的capacity属性

capacity属性返回数组中的元素数量,而不分配任何额外的存储空间。

示例

var languages = ["Swift", "C", "Java"]

// 检查languages是否为空
var result = languages.capacity

print(result)

// 输出:3

capacity语法

数组capacity属性的语法如下:

array.capacity

这里,arrayArray类的对象。

capacity返回值

capacity属性返回数组中当前元素的总数,而不分配任何额外的存储空间。

示例1:Swift数组的capacity

var names = ["Gregory", "Perry", "Nadal"]

// 获取names中的元素总数
print(names.capacity)

var employees = [String]()

// 获取employees中的元素总数
print(employees.capacity)

输出

3
0

在上面的示例中,由于:

  • names包含三个字符串元素,所以该属性返回3
  • employees是一个空数组,所以该属性返回0

capacity属性在不分配新存储空间的情况下返回元素的总数。

示例2:使用if...else与capacity

var numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

// 因为numbers中有10个元素,所以为false
if (numbers.capacity < 5) {

print("数组大小较小")
}

else {

print("数组大小较大")
}

输出

数组大小较大

在上面的示例中,我们创建了一个名为numbers的数组,其中包含10个元素。

在这里,由于数组中有10个元素,所以numbers.capacity < 5求值为false,因此执行else块内的语句。