프로그래밍/(도서)C#코딩의기술-실전
[C#] 코딩의기술(실전편) - 3.2 First VS Single
Victory_HA
2022. 3. 31. 22:31
First메서드
- 조건에 맞는 첫 번째 요소를 반환합니다.
- 첫 번째 요소를 발견 한 시점에 값을 반환합니다.
- 그 뒤에 요소들은 확인하지 않습니다.
Single메서드
- 조건에 맞는 값이 하나만 있는 것을 확인한 다음 그 값을 반환합니다.
- 조건에 맞는 값을 발견 한 후에도 나머지 요소들도 확인합니다.
- 모든 요소들을 확인 합니다.
First(), Single() 사용예제1
class Program
{
static void Main(string[] args)
{
var enumObj = Enumerable.Range(0, 1000000000);
var start1 = DateTime.Now;
var a = enumObj.First(x => x == 1);
Console.WriteLine($"First() TEST :{DateTime.Now - start1}");
var start2 = DateTime.Now;
var b = enumObj.Single(x => x == 1);
Console.WriteLine($"Single() TEST :{DateTime.Now - start2}");
}
}
실행 결과
- Single()처리 속도가 First()처리 속도보다 훨씬 느리다.
Single()의 장점
- First()에 비해 안정성이 높다.
- 데이터가 하나밖에 없다는 것을 검증할 수 있다.
Single()의 단점
- First()에 비해 속도가 느리다.