Kotlin 中 List 和 Array 类型之间的区别


Listarray 是 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,

更新于: 2021年10月27日

4K+ 次查看

启动你的 职业生涯

通过完成课程获得认证

开始学习
广告