Kotlin 中 List 和 Array 类型之间的区别
List 和 array 是 Kotlin 支持的两种流行集合。根据定义,这两种集合都分配连续的内存位置。在本文中,我们将通过一个示例来演示这两种集合类型之间的区别。
| 属性 | 数组 | 列表 |
|---|---|---|
| 实现 | 数组使用 Array<T> 类实现 | List<T> 或 MutableList<T> 接口用于在 Kotlin 中实现 List |
| 可变性 | Array<T> 是可变的,即值可以更改。 | List<T> 本质上是不可变的。为了创建一个可变列表,需要使用 MutableList<T> 接口。 |
| 大小 | 数组的大小是固定的。它不能增加或减小大小。 | MutableList<T> 具有 'add' 和 'remove' 函数,以便增加或减少 MutableList 的大小。 |
| 性能 | 为了获得更好的性能,可以使用数组,因为它针对不同的原始数据类型(如 IntArray[]、DoubleArray[])进行了优化。 | 为了在代码中获得更好的可访问性,可以使用列表。由于大小是动态的,因此具有良好的内存管理。 |
示例
在以下示例中,我们将看到如何在 Kotlin 中声明数组和列表,以及如何操作它们的值。
fun main(args: Array<String>) {
val a = arrayOf(1, 2, 3)
// Printing all the values of array a
println("The Array contains:")
a.forEach{
println(it)
}
val names = listOf("stud1", "stud2", "stud3")
// Printing all the values of list names
println("
The List contains: ")
names.forEach {
println(it)
}
var days: MutableList<String> = mutableListOf(
"Monday", "Tuesday", "Wednesday",
"Thursday", "Friday", "Saturday", "Sunday"
)
// Printing all the values of MutableList list
println("
Given Mutable List contains:")
days.forEach{
print(it)
}
println("
Mutable List after modification:")
days.forEach{
print(it + ", ")
}
}输出
它将生成以下输出:
The Array contains: 1 2 3 The List contains: stud1 stud2 stud3 Given Mutable List contains: MondayTuesdayWednesdayThursdayFridaySaturdaySunday Mutable List after modification: Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday,
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP