📅  最后修改于: 2023-12-03 14:43:42.018000             🧑  作者: Mango
在 Kotlin 中,我们可以使用 size
属性来获取数组的大小。下面是一个示例:
val arr = arrayOf(1, 2, 3, 4, 5)
println(arr.size) // 输出:5
除了普通数组,Kotlin 还提供了一些其他类型的数组,如可变数组 MutableList
。
对于可变数组,我们可以使用 size
属性来获取当前数组元素的数量。同时,我们还可以使用 capacity
属性来获取当前数组所能容纳的最大元素数。
下面是一个示例:
val arr = mutableListOf<Int>()
for (i in 1..10) {
arr.add(i)
println("size: ${arr.size}, capacity: ${arr.capacity()}")
}
输出如下:
size: 1, capacity: 10
size: 2, capacity: 10
size: 3, capacity: 10
size: 4, capacity: 10
size: 5, capacity: 10
size: 6, capacity: 10
size: 7, capacity: 10
size: 8, capacity: 10
size: 9, capacity: 10
size: 10, capacity: 10
可以看到,初始化时 MutableList
的容量为 10
,在逐步添加元素时,其容量不会随着元素数量的增加而改变。
如果需要在保证数组元素数量不变的前提下,改变数组容量,我们可以使用 ensureCapacity
函数:
val arr = mutableListOf(1, 2, 3, 4, 5)
println("size: ${arr.size}, capacity: ${arr.capacity()}")
arr.ensureCapacity(10)
println("size: ${arr.size}, capacity: ${arr.capacity()}")
输出如下:
size: 5, capacity: 5
size: 5, capacity: 10
可以看到,调用 ensureCapacity
函数后,数组的容量变为了 10
,但其元素数量仍为 5
。
总之,无论是普通数组还是可变数组,在 Kotlin 中都可以使用 size
属性来获取数组的大小,而对于可变数组,我们还可以使用 capacity
属性和 ensureCapacity
函数来操作其容量。