FirstOrDefault는 C# 프로그래밍 언어의 LINQ (Language Integrated Query) 라이브러리에서 사용되는 메서드 중 하나입니다. 이 함수는 시퀀스(예: 리스트, 배열 등)에서 조건을 만족하는 첫 번째 요소를 반환하거나, 조건을 만족하는 요소가 없을 경우 기본값을 반환합니다.
- 사용 방법
FirstOrDefault 메서드는 기본적으로 두 가지 형태로 사용됩니다:
- 조건 없이 사용하기: 시퀀스의 첫 번째 요소를 반환하거나, 시퀀스가 비어 있으면 기본값을 반환합니다.
- 조건을 지정하여 사용하기: 주어진 조건을 만족하는 첫 번째 요소를 반환하거나, 해당 조건을 만족하는 요소가 없으면 기본값을 반환합니다.
- 예제 코드
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
// 조건 없이 사용
int firstOrDefault = numbers.FirstOrDefault(); // 결과는 1
// 조건을 지정하여 사용
int firstOrDefaultEven = numbers.FirstOrDefault(x => x % 2 == 0); // 결과는 2
만약 리스트 numbers가 비어 있으면 firstOrDefault의 값은 int의 기본값인 0이 됩니다. 조건을 지정한 경우에는 해당 조건을 만족하는 첫 번째 요소를 찾지 못하면 역시 int의 기본값인 0을 반환합니다.
- 기본값
기본값은 요소의 타입에 따라 결정됩니다. 값 타입(Value Type)의 경우에는 해당 타입의 기본값 (예: int의 경우 0, bool의 경우 false)이고, 참조 타입(Reference Type)의 경우에는 null입니다.
- 사용 시 주의사항
- FirstOrDefault는 조건을 만족하는 첫 번째 요소만을 찾으므로, 동일 조건을 만족하는 다른 요소가 더 있더라도 무시됩니다.
즉, FirstOrDefault 메서드는 데이터를 필터링하고 특정 조건에 맞는 요소를 빠르게 찾고자 할 때 유용하게 사용될 수 있습니다.
'C#_ Unity Game programming' 카테고리의 다른 글
C# - DB관리를 위한 LINQ (0) | 2024.04.24 |
---|---|
C# - 반복문에서 람다식 사용할 때 주의할 점 (0) | 2024.04.23 |
C# - 네임스페이스를 사용하는 이유 (0) | 2024.04.16 |
Unity-디자인 패턴(옵저버 패턴) (0) | 2024.02.28 |
Unity - 빌드 사이즈와 메모리의 차이점 및 Addressable System의 활용 (0) | 2024.02.24 |