Kotlin 陣列 - flatten() 函式



Kotlin 陣列的 flatten() 函式用於透過合併所有子陣列來建立一個單個列表,並返回給定陣列中所有陣列的所有元素的列表。

例如,如果我們有一個像 arrayOf(arrayOf(1), arrayOf(2, 3)) 這樣的陣列陣列,並且我們對其呼叫 flatten(),則結果列表將為 [1, 2, 3]。

語法

以下是 Kotlin 陣列 flatten() 函式的語法:

fun <T> Array<out Array<out T>>.flatten(): List<T>

引數

此函式不接受任何引數。

返回值

此函式返回一個新列表,其中包含子陣列的所有元素。

示例 1

以下是一個基本示例,用於演示 flatten() 函式的使用:

fun main(args: Array<String>){
   val deepArray = arrayOf(
      arrayOf(1),
      arrayOf(2, 3),
      arrayOf(4, 5, 6)
   )
   // use the flatten function
   val list = deepArray.flatten()
   println("list: $list")
}

輸出

執行上述程式碼後,我們將得到以下結果:

list: [1, 2, 3, 4, 5, 6]

示例 2

現在,讓我們看另一個示例。在這裡,我們使用 flatten() 函式返回一個包含所有子陣列的列表:

fun main(args: Array<String>){
   val deepArray = arrayOf(
      arrayOf("tutorialspoint"),
      arrayOf("tut", "tutorix"),
      arrayOf("Hyd", "Hyderabad", "India")
   )
   val list = deepArray.flatten()
   println("list: $list")
}

輸出

執行上述程式碼後,我們將得到以下輸出:

list: [tutorialspoint, tut, tutorix, Hyd, Hyderabad, India]

示例 3

以下示例從包含字元和字串的子陣列建立一個列表:

fun main(args: Array<String>){
   val deepArray = arrayOf(
      arrayOf("Name:"),
      arrayOf('D', 'a'),
      arrayOf('i', 's', 'y')
   )
   val list = deepArray.flatten()
   println("list: $list")
}

輸出

上述程式碼產生以下輸出:

list: [Name:, D, a, i, s, y]
kotlin_arrays.htm
廣告
© . All rights reserved.