람다는 익명 함수이며, 함수형 프로그래밍에서 자주 사용하는 패턴이다.
코틀린은 객체지향 프로그래밍 뿐만 아니라 함수형 프로그래밍 또한 지원하는 언어이기 때문에 당연히 람다 표현식을 사용할 수 있다.
익명함수 생성
익명함수는 아래처럼 이름없이 정의되는 함수를 말한다. 변수 printHello에 할당되고 있는 내용이 바로 익명함수이다.
실행결과
람다를 이용하면 더 간단히 익명함수를 정의할 수 있다. 아래는 위와 동일한 코드를 람다로 재작성 한 것이다.
인자가 있는 익명함수
익명함수에서도 인자를 받아 값을 반환할 수 있다.
->
의 옆에 하나의 값이나 문장이 들어오면 return
을 생략할 수 있다. 여러 줄의 코드가 들어가는 경우엔 중괄호를 넣어줘야한다. (자바와 같다)
함수의 인자, 반환 타입을 정의한 다음에 익명함수를 만드는 방법도 있다.
인자 선언 생략
인자가 1개일때는 아래와 같이 인자의 이름을 선언하지 않아도 된다.
인자 name
을 생략한 대신 it
으로 인자에 접근하고 있다. 코틀린은 인자를 생략하는 경우 it
으로 인자를 사용할 수 있다.