티스토리 뷰

Kotlin

람다 표현식 Lamda Expression

IT Knowledge Share 2021. 7. 9. 13:07
반응형

코틀린은 함수형 언어로, 코틀린에서 람다식을 쉽게 이용할 수 있습니다.

람다 표현식은 말그래도 함수를 함수로 전달하고, 그 함수를 실행시키는 역할을 합니다.

 

아래의 간단한 예문을 살펴봅니다.

//자바로 구현시
button.setOnClickListener(new View.OnClickListener() {
 @Override
 public void onClick(View view) {
  
 }

})

//람다함수 사용시
button.setOnClickListener{ v ->

}

특히 버튼에서 클릭 리스너를 사용할 때, 이 리스너를 람다로 전달하는 방법이 많이 사용됩니다.

반응형

위의 예문과 같이, 자바로 구현 시에 setOnClickListener를 장착하고, View에는 onClickListener 인터페이스를 구현합니다. 이 onClickListener 인터페이스에는 onClick이라는 메소드가 있다고 가정할 때, 직접 메소드를 구현시킨 구현체를 버튼으로 넘기고, 실제 버튼을 클릭하면, 해당 메소드가 실행되도록 하는 구조입니다.

 

코틀린의 경우, 위처럼 하나의 메소드를 지닌 인터페이스라면, 간결한 람다식으로 구현하여 함수를 넘겨줄 수 있습니다. 자바에서는 view로 파라미터를 넘겨주는 예시처럼, 코틀린에서는 v로 파라미터를 넘겨주는데, 이렇게 파라미터가 한 개라면 람다의 경우 생략이 가능하므로, 생략한 후 it으로도 접근이 가능합니다.

반응형

'Kotlin' 카테고리의 다른 글

Null Safety  (0) 2021.07.09
lateinit, lazy init  (0) 2021.07.09
데이터 클래스 Data Class  (0) 2021.07.08
범위 함수 Scope Function (Apply, Also, Let, With, Run)  (0) 2021.07.08
코틀린 제너릭 Kotlin Generics  (0) 2021.07.06
댓글