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
- 문자열 내마음대로 정렬하기
- 코딩테스트
- 2차원 배열 출력
- 동시성문제
- port
- 프로그래머스
- deque
- annotation
- springMVC
- process
- 크기가 작은 부분 문자열
- stack
- Split
- URL
- CPU bound
- CPU
- reflection
- Queue
- http
- Spring
- frontPattern
- 문자열
- DICTIONARY
- 십진수 이진수 전환
- green thread
- dns
- 가장 가까운 단어
- IO bound
- java
- TCP/IP
Archives
- Today
- Total
아무나개발하자
고차함수 람다함수 사용법 본문
고차함수란 함수를 인자로 전달받거나 함수를 결과로 반환하는 함수를 말한다 여기서 b를 고차함수라고 하는데 고차함수에 사용법에 대해 알아보자
fun main() {
b(::a)
}
fun a(str: String){
println("$str 함수 a")
}
fun b(a:(String) ->Unit){
a("b가 호출한")
}
fun b라고 함수를 선언하고 파라미터로 fun a를 받는데, 함수를 파라미터로 받는 방법은
fun b에서 파라미터로 받을 함수 이름을 지정, a라고 나는 지정했다
:를 써준다음, 파라미터로 받을 인자의 타입(String) -> 리턴타입을 써준다.
그리고 함수를 사용하면 된다.
고차함수를 호출하는 방법 -> 고차함수이름(::매개로 받은 함수이름)
람다함수 사용법
fun main() {
b(::a)
//람다함수 사용법
//val 변수선언 :(매개변수 타입1, 매개변수 타입2, ..) -> return타입 = {매개변수1, 매개변수2, .. -> 함수내용}
val c : (String) -> Unit = {str -> println("$str 람다함수")}
val p : (Int, Int) -> Int = {a, b -> a+b}
b(c)
println(p(10,20))
}
fun a(str: String){
println("$str 함수 a")
}
fun b(a:(String) ->Unit){
a("b가 호출한")
}
주석 내용을 참조하자!!
출처 : https://www.youtube.com/watch?v=mvfU-7tdLWs&list=PLQdnHjXZyYadiw5aV3p6DwUdXV2bZuhlN&index=14