고차 함수는 함수를 매개 변수로 사용하거나 함수를 반환하는 함수입니다. fun main(args: Array) { // 람다 함수를 이용하여 함수 전달 result("고차함수 ", { x, y -> x + y }) } // sum: (Int, Int) -> Int // 함수명 : (매개변수 타입) -> 리턴 타입 fun result(str: String, sum: (Int, Int) -> Int) { println(str + sum(10, 20)) // print 고차함수 30 } 위 코드를 이해하기 위해서는 아래 코틀린 문법이 필수입니다. 2019/05/19 - [Kotlin] - 코틀린 기초 문법) 1. 코틀린 변수 정의하기 2019/05/19 - [Kotlin] - 코틀린 기초 문법) 2. 코틀린 ..
람다 식과 익명 함수는 '함수 리터럴'입니다. 즉, 선언되지 않고 즉시 식으로 전달되는 함수입니다. fun sum(x: Int, y: Int) = println(x + y) // 일반 함수 val lambda = { x: Int, y: Int -> println(x + y) } //람다 함수 fun main(args: Array) { sum(10, 20)// print 30 lambda(10, 20)// print 30 } 람다 표현식은 항상 중괄호로 둘러쌉니다. 전체 구문 형식의 매개 변수 선언은 중괄호 안에 들어가고 선택적 유형 주석을 가집니다. 본문은 -> 부호 뒤에 옵니다. 유추된 람다 반환 형식이 아닌 Unit경우 람다 본문의 마지막 식 (또는 단일 식)이 반환 값으로 처리됩니다. 쉽게 말해 람..