반응형
집합 연산자 Set Operators
집합 연산자는 두 집합 간에 관계를 활용하는 연산자합니다.
LINQ 메서드 중 Distinct, Union, Intersect, Except 가 집합 연산자에 해당합니다.
집합 내에 중복 요소 제거하기
Distinct 메서드로 factorsOf300 배열에서 중복을 제거한 uniqueFactors 배열을 만듭니다.
int[] factorsOf300 = { 2, 2, 3, 5, 5 };
var uniqueFactors = factorsOf300.Distinct();
// uniqueFactors = { 2, 3, 5 };
두 집합에서 중복되지 않게 합집합 만들기
Union 메서드는 두 집합을 각 원소가 중복되지 않도록 더한 새로운 집합을 만듭니다.
int[] numbersA = { 0, 2, 4, 5, 6, 8, 9 };
int[] numbersB = { 1, 3, 5, 7, 8 };
var uniqueNumbers = numbersA.Union(numbersB);
// uniqueNumbers = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
두 집합 간에 중복되는 요소만 모으기
Intersect 메서드는 두 집합에서 중복되는 원소만 모아서 새로운 집합을 만듭니다.
int[] numbersA = { 0, 2, 4, 5, 6, 8, 9 };
int[] numbersB = { 1, 3, 5, 7, 8 };
var commonNumbers = numbersA.Intersect(numbersB);
// commonNumbers = { 5 , 8 };
A 집합에는 있지만 B 집합에는 없는 요소만 모으기
Except 메서드는 기준이 되는 A 집합에만 존재하며 B 집합에 존재하지 않는 원소만 모아서 새로운 집합을 만듭니다.
int[] numbersA = { 0, 2, 4, 5, 6, 8, 9 };
int[] numbersB = { 1, 3, 5, 7, 8 };
IEnumerable<int> aOnlyNumbers = numbersA.Except(numbersB);
// aOnlyNumbers = { 0, 2, 4, 6, 9 } ;
반응형
'Develop > .NET 가이드' 카테고리의 다른 글
[C#] LINQ 사용방법 - 요소 연산자 First, FirstOrDefault, ElementAt (0) | 2020.02.02 |
---|---|
[C#] LINQ 사용방법 - 변환 연산자 ToArray, ToList, ToDictionary, OfType (0) | 2020.02.02 |
[C#] LINQ 사용방법 - 그룹 연산자 Group by into (0) | 2020.02.02 |
[C#] LINQ 사용방법 - 정렬 연산자 OrderBy, ThenBy, OrderByDescending, ThenByDescending (0) | 2020.02.01 |
[C#] LINQ 사용방법 - 분할 연산자 Take, Skip, TakeWhile, SkipWhile (0) | 2020.02.01 |
꾸준히 노력하는 개발자 "김예건" 입니다.