[C#] Lambda Expression - 람다식

PIAZZI·2024년 4월 23일

C#

목록 보기
2/9
post-thumbnail

Lambda Expression - 람다식

  • 무명 함수(anonymous function)를 표현하는데 사용된다. (무명 함수 - 접근자, 함수 이름, return 문이 없는 함수)
  • 간결하고 직관적인 형태로 함수를 정의하는 방식
  • => 연산자는 C#에서 람다식을 표현할 때 사용한다.(C# 3.0부터 지원)
  • 코드가 짧아 가독성이 좋아서 많이 사용된다.

사용법

(입력 파라미터) => {실행문장 블럭};

  • =>을 기준으로 입력 파라미터는 왼쪽에, 실행 문장들은 오른쪽에 둔다.
value => value * 7 // value를 파라미터로 받고, value * 7의 결과를 리턴하는 함수를 의미

아래 코드들은 다르게 보일 뿐 위의 코드와 동일하다.

(int value) => value * 7
(int value) => (value * 7)
value => {return value * 7;}
int value => {return value * 7;}
  • 일반적으로 입력타입이 생략되어 있으면, 컴파일러가 알아서 찾는다. (형식 유추 (Type Inference))

입력 파라미터는 1개가 아닌 N개가 들어갈 수 있다.
(입력 파라미터가 하나도 없을 수 있다.)

delegate int calculate(int a, int b); // 무명 메소드 선언

static void Main(){
	calculate cal = (int a, int b) => a + b; // 람다식 사용 
    
    calculate cal = (a, b) => a + b; // 타입 생략
}

람다식닷넷 프레임워크 여기저기에서도 많이 사용되지만, 특히 _LINQ (Language Integrated Query) 에서 많이 사용된다.

profile
범부에오

0개의 댓글