[kotlin] 코틀린에서 람다식과 고차 함수를 사용하여 함수리터럴(function literal)을 작성하는 방법
람다식(람다 표현식) 작성하기
람다식은 중괄호({})로 감싸진 매개변수 목록과 본문으로 이루어집니다. 화살표(->)를 사용하여 매개변수와 본문을 구분합니다.
val sum: (Int, Int) -> Int = { x, y -> x + y }
위의 예제에서 { x, y -> x + y }
부분이 람다식으로, Int
타입의 매개변수 x
, y
를 받아 그 합을 반환합니다.
고차 함수로 람다식 활용하기
고차 함수는 람다식을 인자로 받거나 람다식을 반환하는 함수입니다. 아래는 고차 함수가 람다식을 활용하는 예제입니다.
fun calculate(x: Int, y: Int, operation: (Int, Int) -> Int): Int {
return operation(x, y)
}
fun main() {
val result = calculate(10, 5) { a, b -> a + b }
println(result) // 출력: 15
}
위의 예제에서 calculate
함수는 operation
이라는 이름의 람다식을 인자로 받아 x
와 y
를 해당 람다식에 적용하여 결과를 반환합니다. main
함수에서는 calculate
함수를 호출할 때 람다식을 인자로 전달하여 덧셈 연산을 수행한 결과를 출력합니다.
이와 같이 코틀린에서는 람다식과 고차 함수를 활용하여 함수리터럴을 작성할 수 있습니다. 이를 통해 코드를 간결하게 표현할 수 있고, 함수형 프로그래밍의 장점을 살려 유연하고 강력한 코드를 작성할 수 있습니다.
참고문헌: