High Order Function
fun sum(a: Int, b: Int) : Int {
return a+b
}
fun simpleHighOrderFunction(sum: (Int, Int) -> Int, a: Int, b: Int): Int {
return sum(a, b)
}fun main(args: Array<String>) {
println(simpleHighOrderFunction(sum, 10, 20)) //함수를 변수에 저장해서 사용하는 방식
println(simpleHighOrderFuntion({x,y -> x+y }, 10, 20)) //익명함수를 작성해서 사용하는 방식
println(simpleHighOrderFunction({x,y -> x-y}, 10, 20))
println(simpleHighOrderFunction({x,y -> x*y}, 10, 20))
}
val sum: (Int, Int): Int = {x, y -> x + y}Last updated