[C# 문법] C# LINQ SequenceEqual 메서드
- C#/C# 문법
- 2021. 8. 22. 18:50
소개
- 오늘은 C# LINQ 구문에서 SequenceEqual 메서드에 대해서 알려 드리려고 합니다.
- SequenceEqual 메서드는 두 컬렉션 (리스트나 배열)에 있는 요소가 같은지 조사하는 메서드입니다.
- 이해하기 쉽게 예제 코드를 통해서 어떻게 Count 메서드를 사용하는지 보여 드리고, LINQ를 사용하지 않은 코드와 함께 작상하여 2개의 코드량의 차이도 같이 보여 드리도록 하겠습니다.
LINQ SequenceEqual 예제코드
- 예제 코드는 학생들의 성적(Score)이 50점 이상인 학생의 수가 몇명인지를 Count 메서드를 통해서 알아 보는 예제 코드입니다.
- 또한, LINQ를 사용하지 않는 구문도 아래 함께 작성해 보았습니다.
using System;
using System.Collections.Generic;
using System.Linq;
namespace ConsoleApp7
{
static class Program
{
static void Main(string[] args)
{
List<int> list1 = new List<int>()
{
1, 2, 3, 4 , 5, 6, 7
};
List<int> list2 = new List<int>()
{
1, 2, 3, 4 , 5, 6, 7
};
// LINQ 구문
var result = list1.SequenceEqual(list2);
if (result)
{
Console.WriteLine($"두개의 리스트는 내용이 모두 같습니다.");
}
else
{
Console.WriteLine($"두개의 리스트의 내용이 다릅니다.");
}
// LINQ를 사용하지 않은 구문
bool equal = true;
if(list1.Count != list2.Count)
{
equal = false;
}
else
{
for(int idx = 0; idx < list1.Count; idx++)
{
if(list1[idx] != list2[idx])
{
equal = false;
}
break;
}
}
if (equal)
{
Console.WriteLine($"두개의 리스트는 내용이 모두 같습니다.");
}
else
{
Console.WriteLine($"두개의 리스트의 내용이 다릅니다.");
}
}
}
}
실행 결과
두개의 리스트는 내용이 모두 같습니다.
두개의 리스트는 내용이 모두 같습니다.
- 위와 같이 LINQ를 이용한 구문의 코드 량이 월등히 적다는 것을 확인할 수 있습니다.
728x90
'C# > C# 문법' 카테고리의 다른 글
[C# 문법] C# LINQ First, FirstOrDefault, Single, SingleOrDefault 차이점 (0) | 2021.08.24 |
---|---|
[C# 문법] C# LINQ FirstOrDefault, LastOrDefault 메서드 (0) | 2021.08.22 |
[C# 문법] C# LINQ Count 메서드 (0) | 2021.08.22 |
[C# 문법] C# yield (0) | 2021.08.22 |
[C# 문법] C# LINQ Average 평균값 구하기 (0) | 2021.08.22 |
이 글을 공유하기