Kotlin 陣列 - <init> 建構函式



Kotlin 陣列的 init 建構函式用於建立一個具有指定大小的新陣列,其中每個元素都是透過呼叫指定的 init 函式計算得到的。

init 建構函式初始化一個數組,並接受一個函式,該函式依次返回一個值,該值將被分配為陣列的元素。

語法

以下是 Kotlin 陣列 init 建構函式的語法:

<init>(size: Int, init: (Int) -> T)

引數

此建構函式接受以下引數:

  • size:它表示陣列必須包含的元素數量。

  • init:它表示一個函式,該函式為陣列的每個元素賦值,並返回該函式返回的值。

返回值

此建構函式返回陣列物件的例項。

示例 1

以下是一個基本示例,我們使用 Kotlin Array 類的建構函式建立一個大小為 5 的陣列。 init 函式將陣列的值設定為 1,然後列印陣列中的值:

fun main(args: Array<String>) {
   var array = Array(5) { init -> 1 }
   val len = array.size
   println("The number of elements in the array is: $len")
   println("The elements in the array are: ")
   for (i in 0 until len)
   {
      println(array[i])
   }
}

輸出

以上程式碼生成以下輸出:

The number of elements in the array is: 5
The elements in the array are: 
1
1
1
1
1

示例 2

以下示例建立一個大小為 5 的陣列,其中每個元素都初始化為其索引的兩倍:

fun main() {
   // Each element is initialized to twice of its index
   val array = Array(5) { index -> index * 2 }

   // Print the contents of the array
   println("Array contents: ${array.joinToString()}")
}

輸出

以下是輸出:

Array contents: 0, 2, 4, 6, 8

示例 3

讓我們建立一個大小為 10 的陣列。然後,我們使用init函式將陣列的值設定為值本身的索引:

fun main(args: Array<String>) {
   // i for initialization
   var array = Array(10) { i -> i }
   val len = array.size
   println("The number of elements in the array is: $len")
   println("The elements in the array are: ")
   for (i in 0 until len)
   {
      println(array[i])
   }
}

輸出

以下是輸出:

The number of elements in the array is: 10
The elements in the array are: 
0
1
2
3
4
5
6
7
8
9

示例 4

以下示例建立一個大小為 2 的陣列,然後將字串初始化為每個元素:

fun main(args: Array<String>) {
   var array = Array(2) { init -> "Sample String" }
   val len = array.size
   println("The number of elements in the array is: $len")
   println("The elements in the array are: ")
   for (i in 0 until len)
   {
      println(array[i])
   }
}

輸出

以下是輸出:

The number of elements in the array is: 2
The elements in the array are: 
Sample String
Sample String
kotlin_arrays.htm
廣告

© . All rights reserved.