Lambdas and Higher-Order Functions
Function Types
Name the input and output types of a function parameter.
Function Types
FunctionTypes.kt
fun combine(left: Int, right: Int, operation: (Int, Int) -> Int): Int {
val combined = operation(left, right)
return combined
}
fun main() {
val left =
val right = 2
val sum = combine(left, right, { a, b ->
a + b
})
println("left=$left")
println("sum=$sum")
}
fun combine(left: Int, right: Int, operation: (Int, Int) -> Int): Int {
val combined = operation(left, right)
return combined
}
fun main() {
val left =
val right = 2
val sum = combine(left, right, { a, b ->
a + b
})
println("left=$left")
println("sum=$sum")
}
fun combine(left: Int, right: Int, operation: (Int, Int) -> Int): Int {
val combined = operation(left, right)
return combined
}
fun main() {
val left =
val right = 2
val sum = combine(left, right, { a, b ->
a + b
})
println("left=$left")
println("sum=$sum")
}
function-type
`(Int, Int) -> Int` means a function receives two integers and returns an integer.