C#의 Intersect() 메서드는 LINQ에서 제공하는 집합 연산 메서드로, 두 개의 시퀀스(컬렉션)에 모두 존재하는 공통 요소만 추출할 때 사용합니다.
Intersect 메서드 기본 문법
먼저 비교할 두 개의 리스트를 생성합니다.
var list1 = new List<int>{99, 87};
var list2 = new List<int>{56, 87, 45, 99};이제 Intersect() 메서드를 호출하면 두 리스트에 공통으로 포함된 요소를 반환받을 수 있습니다.
list1.Intersect(list2);
전체 예제 코드
다음은 Intersect() 메서드를 활용한 완전한 예제입니다.
using System.Collections.Generic;
using System.Linq;
using System;
public class Demo {
public static void Main() {
// 두 개의 리스트 선언
var list1 = new List<int>{99, 87};
var list2 = new List<int>{56, 87, 45, 99};
// 공통 요소 추출
var res = list1.Intersect(list2);
foreach(int i in res) {
Console.WriteLine(i);
}
}
}실행 결과
위 코드를 실행하면 두 리스트에 모두 존재하는 값인 99와 87이 출력됩니다.
99 87
참고 사항
Intersect() 메서드를 사용하려면 System.Linq 네임스페이스를 반드시 포함해야 합니다. 또한 이 메서드는 지연 실행(lazy evaluation) 방식으로 동작하며, 결과에는 중복 요소가 제거된 상태로 반환됩니다. 요소의 순서는 첫 번째 시퀀스에 나타나는 순서를 따릅니다.