在 Kotlin 中,高階函數是指接受一個或多個函數作為參數,或者將函數作為返回值的函數。高階函數的定義與普通函數類似,只是在參數列表或返回值中包含了函數類型。
以下是 Kotlin 高階函數的一些示例:
fun applyFunction(x: Int, f: (Int) -> Int): Int {
return f(x)
}
fun main() {
val result = applyFunction(5, { y -> y * y })
println(result) // 輸出 25
}
在上面的示例中,applyFunction
是一個高階函數,它接受兩個參數:一個整數 x
和一個函數 f
,該函數將整數作為參數并返回一個整數。在 main
函數中,我們傳遞了一個 lambda 表達式 { y -> y * y }
作為參數 f
,該表達式計算輸入值的平方。
fun getFunction(): (Int) -> Int {
return { y -> y * y }
}
fun main() {
val function = getFunction()
val result = function(5)
println(result) // 輸出 25
}
在上面的示例中,getFunction
是一個高階函數,它沒有參數,并返回一個函數,該函數將整數作為參數并返回一個整數。在 main
函數中,我們調用 getFunction
來獲取一個函數,并將其用于計算輸入值的平方。
這些示例演示了 Kotlin 中高階函數的基本概念。高階函數在 Kotlin 中非常常見,并且可以用于實現許多高級編程技巧,例如函數組合、柯里化等。