728x90
5. 고차함수
고차함수란, 일반 함수의 매개변수나 반환값으로 또 다른 함수가 사용되는 함수를 말한다.
먼저 일반적인 함수에서의 인자 전달 예시를 보자
fun sum(a: Int, b: Int){
return a + b
}
fun main(){
val result = sum(2, 3)
println("result = $result")
}
// 결과값
// result = 5
위 코드는 Int타입의 매개변수 두 개를 전달 받아 Int타입의 값을 반환하는 함수이다. 고차함수는 이러한 매개변수나 반환값에 함수를 이용할 수 있다.
fun sum(a: Int, b: Int, div: (Int, Int) -> Int){
return a + b + div(20, 10)
}
fun main(){
val result = sum(2, 3, {x, y -> x / y})
println("result = $result")
}
// 결과값
// result = 7
sum함수는 Int 타입의 매개변수 2개와, div함수(Int 타입 매개변수 2개, 반환값 1개를 갖는)를 매개변수로 갖는다. result 변수에 sum 함수의 값을 전달할 때 마지막 인자(div함수)로 람다식 자료형의 초기화 값을 전달한다.
728x90
반응형
'Android > Kotlin' 카테고리의 다른 글
Kotlin :: 표현식으로 if else 사용하기 (0) | 2020.10.15 |
---|---|
Kotlin :: 문자열 안에 표현식 값 넣기 (0) | 2020.10.15 |
Kotlin :: 프로그래밍 언어 배우기 (람다함수, 익명함수) (0) | 2020.10.06 |
Kotlin :: 프로그래밍 언어 배우기 (기본함수) (0) | 2020.10.05 |
Kotlin :: 프로그래밍 언어 배우기 (조건문) (0) | 2020.10.01 |
댓글