Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- write by GPT-4
- write by chatGPT
- 자바
- 리눅스
- 자바네트워크
- oracle
- 시스템
- 역학
- 인프라
- 코틀린
- 유닉스
- JVM
- python
- Java
- chatGPT's answer
- Database
- android
- 뉴턴역학
- lombok
- 자바암호
- kotlin
- GIT
- 고전역학
- 웹 크롤링
- GPT-4's answer
- 소프트웨어공학
- Spring boot
- flet
- 파이썬
- NIO
Archives
- Today
- Total
Akashic Records
고차 함수 본문
728x90
고차 함수는 Kotlin의 중요한 기능 중 하나로, 함수를 파라미터로 받거나 결과로 반환하는 함수를 의미합니다. 이를 통해 코드의 가독성과 유연성을 높일 수 있습니다.
- 고차 함수의 선언
고차 함수는 일반 함수와 동일한 방식으로 선언됩니다. 차이점은 고차 함수는 다른 함수를 파라미터로 받거나 결과로 반환한다는 점입니다.
예제:
fun operate(a: Int, b: Int, operation: (Int, Int) -> Int): Int {
return operation(a, b)
}
val sum: (Int, Int) -> Int = { a, b -> a + b }
println(operate(3, 5, sum)) // 출력: 8
이 예제에서 operate
함수는 세 번째 파라미터로 operation
함수를 받습니다. sum
람다 표현식은 operate
함수에 전달되어 실행됩니다.
- 함수를 반환하는 고차 함수
고차 함수는 함수를 결과로 반환할 수도 있습니다. 이를 통해 더 동적이고 유연한 코드를 작성할 수 있습니다.
예제:
fun generateOperation(isMultiply: Boolean): (Int, Int) -> Int {
if (isMultiply) {
return { a, b -> a * b }
} else {
return { a, b -> a + b }
}
}
val operation = generateOperation(true)
println(operation(3, 5)) // 출력: 15
이 예제에서 generateOperation
함수는 isMultiply
파라미터에 따라 다른 함수를 반환합니다. generateOperation(true)
를 호출하면 곱셈 함수가 반환되어 operation(3, 5)
를 실행하면 15가 출력됩니다.
고차 함수는 함수를 값으로 취급하는 함수형 프로그래밍의 중요한 개념입니다. 이를 통해 더 간결하고 유연한 코드를 작성할 수 있습니다.
728x90
Comments