Kotlin 陣列 - first() 函式



Kotlin 陣列的 first() 函式用於返回陣列中第一個匹配給定謂詞或條件的元素。

此函式接受一個引數(謂詞),該引數不需要每次都傳遞。您可以選擇是否提供條件。例如,在 ArrayOf(2,4,5,6).first() 函式中返回陣列的第一個元素(即 2)。

異常

此函式丟擲一個異常:

  • NoSuchElementException:如果在陣列中找不到這樣的元素,則此函式會丟擲此異常。

語法

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

fun <T> Array<out T>.first(predicate: (T) -> Boolean): T

引數

此函式接受謂詞作為引數。謂詞表示一個返回布林值的條件。

返回值

此函式返回陣列的一個元素。否則,如果找不到這樣的元素,則丟擲異常。

示例 1

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

fun main(args: Array<String>) {
   val number: Array<Int> = arrayOf(1, 2, 3, 4, 5)
   val first_elem = number.first()
   println("first element if an array: $first_elem")
}

輸出

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

first element if an array: 1

示例 2

現在,讓我們來看另一個示例。在這裡,我們使用 first() 函式返回第一個匹配給定謂詞的元素:

fun main(args: Array<String>) {
   val number: Array<Int> = arrayOf(1, 2, 3, 4, 5, 6, 7, 8)
   val elem = number.first{it%2==0}
   println("first element divisible by 2: $elem")
}

輸出

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

first element divisible by 2: 2

示例 3

如果元素不滿足謂詞,則以下示例會丟擲異常:

fun main(args: Array<String>) {
   val strings: Array<String> = arrayOf("hii", "Hello", "tutorix", "tutorialspoint")
   val elem = strings.first{it.length<1}
   println("first element 5: $elem")
}

輸出

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

Exception in thread "main" java.util.NoSuchElementException: Array contains no element matching the predicate.
kotlin_arrays.htm
廣告
© . All rights reserved.