티스토리 뷰

크리에이티브 커먼즈 라이선스
Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시 2.0 대한민국 라이선스에 따라 이용하실 수 있습니다.
본문


다음 글은 전체 내용을 공유하지 않고, 새로운 블로그로 링크를 제공하는 글입니다.

이어보기 : http://thdev.tech/kotlin/2017/10/02/Kotlin-Higher-Order-Function



Kotlin에는 Higher-Order Functions 사용이 가능합니다.

Higher-Order Functions은 함수를 변수로 넘겨주거나, 이를 반환하는 것을 말하는데, 레퍼런스 문서에 정의 내용을 참고하여 설명합니다.

fun <T> lock(lock: Lock, body: () -> T): T {
    lock.lock()
    try {
        return body()
    }
    finally {
        lock.unlock()
    }
}

lock 함수에 포함된 파라메터 중 body: () -> T Higher-Order Functions에 해당하죠. body와 : 부분을 아래와 같이 나누어 설명하겠습니다.

  • body : 파라메터 이름
  • () -> T : () 파라메터가 없는 메소드를 정의하였고, -> T는 return 타입을 정의합니다. 여기에서는 Generics T를 사용하였기에 리턴 T

() -> T를 body에 매칭 시켜 파라메터로 정의하였습니다.




다음 글은 전체 내용을 공유하지 않고, 새로운 블로그로 링크를 제공하는 글입니다.

이어보기 : http://thdev.tech/kotlin/2017/10/02/Kotlin-Higher-Order-Function

개인 광고 영역


댓글
댓글쓰기 폼
Total
5,177,918
Today
188
Yesterday
1,530
«   2018/08   »
      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 31  
글 보관함