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+ 次檢視

啟動你的 職業生涯

透過完成課程獲得認證

開始學習
廣告