C# 람다 식이란?
람다 식(lambda expression)은 C#에서 익명 함수(anonymous function)를 간결하게 표현하는 방법입니다. 메서드 이름 없이 인라인 형태로 로직을 작성할 수 있어, 컬렉션 처리나 LINQ 쿼리에서 코드를 훨씬 깔끔하고 가독성 있게 만들어 줍니다.
'=>' 연산자의 의미
람다 식에는 항상 토큰 =>가 등장합니다. 이 기호는 식 컨텍스트(expression context)에서 사용되며, 영어로 "goes to(~로 간다)"라고 읽습니다. 즉, 왼쪽의 입력 매개변수가 오른쪽의 식이나 문 블록으로 전달된다는 의미입니다.
예를 들어, 다음 코드는 리스트에서 50보다 큰 요소가 처음 나타나는 인덱스를 찾는 구문입니다.
list.FindIndex(x => x > 50);
여기서 x => x > 50은 "매개변수 x에 대해 x > 50이라는 조건을 평가한다"는 뜻으로, 위 코드에서 => 토큰이 사용된 모습을 확인할 수 있습니다.
예제 코드
아래 예제는 정수 리스트에서 50보다 큰 첫 번째 요소의 인덱스를 찾아 출력합니다.
using System;
using System.Collections.Generic;
class Demo {
static void Main() {
List<int> list = new List<int> { 44, 6, 34, 23, 78 };
int res = list.FindIndex(x => x > 50);
Console.WriteLine("Index: " + res);
}
}
실행 결과
Index: 4
코드 설명
리스트에는 { 44, 6, 34, 23, 78 } 다섯 개의 값이 저장되어 있으며, 50보다 큰 첫 번째 값은 인덱스 4에 위치한 78입니다. 따라서 FindIndex 메서드는 람다 조건 x => x > 50을 만족하는 첫 번째 위치인 4를 반환합니다.
마무리
람다 식은 C#에서 간결하고 읽기 쉬운 코드를 작성하기 위한 핵심 도구입니다. 위 예제처럼 단순한 컬렉션 검색부터 LINQ를 활용한 복잡한 데이터 처리까지 폭넓게 사용되므로, => 연산자의 동작 원리를 반드시 익혀두시길 권장합니다.