반응형
Zip는 데이터 컬렉션(List, Array, Dictionay)의 각각의 요소를 병합할 때 사용됩니다.
다른 형태의 컬렉션도 타입이 맞는다면 병합이 가능합니다.
특이사항으로는 Concat와 다른점은 각각의 스퀀스(순번)가 맞는 요소간의 병합만 가능하다는 점이 다릅니다.
샘플코드는 숫자 데이터의 덧셈 결과를 확인할 수 있습니다.
public static class Program
{
static void Main(string[] args)
{
// 숫자데이터1,2 샘플데이터 생성
int[] numbers1 = new int[] { 1, 2, 3, 4, 5 };
float[] numbers2 = new float[] { 5, 4, 3 };
// 숫자데이터1 + 숫자데이터2의 덧셈 처리
IEnumerable<string> results = numbers1.Zip(numbers2,
(number1, number2) => (number1 + number2).ToString());
// 숫자데이터1 출력
System.Console.WriteLine("numbers1:{0}", numbers1.Value());
// 숫자데이터2 출력
System.Console.WriteLine("numbers2:{0}", numbers2.Value());
// 숫자데이터1 + 숫저데이터2 결과 출력
System.Console.WriteLine("results :{0}", results.Value());
System.Console.ReadKey();
}
/// <summary>
/// 숫자데이터 출력관련 메서드
/// </summary>
public static string Value(this IEnumerable items)
{
var value = string.Empty;
//숫자데이터의 요소만큼 출력
foreach (var item in items)
{
value += string.Format(" [{0}], ", item);
}
//출력시에 불필요한 "," 삭제
return value.Remove(value.LastIndexOf(','), 1);
}
}
결과값
반응형
'C#' 카테고리의 다른 글
LINQ Except 사용법 (0) | 2021.07.27 |
---|---|
LINQ BinarySearch 사용법 (0) | 2021.07.26 |
LINQ Concat 사용법 (0) | 2021.07.24 |
LINQ Left Outer Join 사용법 (0) | 2021.07.23 |
LINQ Inner Join 사용법 (2) | 2021.07.22 |
댓글