개발/Kotlin
코틀린 공부 - 함수 (5) 함수를 인자로 넘기는 다양한 방법
레란희
2021. 8. 3. 21:15
함수를 변수에 할당하는 다양한 방법
fun main() {
val calcSum : Int = sum(3, 5) //(1)
val calcSubtract : Int = calculate(::subtract, 10, 5) //(2)
val calcMultiply : Int = calculate(fun (a:Int, b:Int) = a * b, 3, 5) //(3)
val calcDivide : Int = calculate({ a, b -> a / b }, 10, 5) //(4)
println("sum : $calcSum" +
"\nsubtract : $calcSubtract" +
"\nmultiply : $calcMultiply" +
"\ndivide : $calcDivide"
);
}
fun sum (a: Int, b: Int) = a + b
fun subtract (a: Int, b: Int) = a - b
fun calculate (calc: (Int, Int) -> Int, a: Int, b: Int) : Int{
return calc(a, b)
}
(2) 미리 만들어놓은 일반 함수를 인자값으로 넘길 때는 :: 을 사용한다.
(3) 익명 함수로 넘길 수도 있다
(4) 람다식으로 넘길 수도 있다