IntermediateLambdas

Higher-Order Function

Pass a function as a parameter.

kotlin
fun calculate(a: Int, b: Int, operation: (Int, Int) -> Int): Int {
    return operation(a, b)
}

fun main() {
    val result = calculate(10, 5) { x, y -> x + y }
    println(result)
}
Output
15

Explanation

calculate takes a function parameter. We pass a lambda that adds two numbers. The function type (Int, Int) -> Int describes the signature.