오늘은 List에서 원하는 값을 출력하기 위해 LinQ 매서드를 사용하는 법과 그 차이점에 대해 알아봤다.
정리 내용
1. FirstOrDefault
리스트 내부에서 조건을 만족하는 첫 번째 요소를 반환한다.
특정한 값을 찾고 싶을때 사용하며, 값을 찾지 못하면 Null값을 반환한다.
더보기
var item = list.FirstOrDefault(x=>x.Value > 10);
위 코드를 예시로 리스트 안에서 Value가 10보다 큰 요소 중 가장 첫 번째 요소를 반환한다.
List 내부에 [0,13,11,7,5] 가 있다면 가장 작은 수인 11이 아니라 먼저 만나는 13을 반환한다.
2. Where
조건을 만족하는 모든 요소를 반환한다.
더보기
var filtered = list.Where(x => x.Value > 10);
list 내부의 10보다 큰 값들을 전부 찾아서 filtered 에 저장해서 사용할 수 있다.
이때 filtered에 저장 된 값들은 참조 형식으로 이루어져 있어 수정에 유의해야 한다.
3. Select
리스트의 요소를 특정 방식으로 변환하여 결과를 반환할 수 있다.
더보기
var mapped = list.Select(x => x.Value * 2);
이 경우 mapped에 들어가는 값은 list요소를 변환하여 값 형식으로 전해 주는것이 때문에 mapped 변수는 자유롭게 사용해도 된다.
내용 요약
- FirstOrDefault와 Where
→조건을 만족하는 값을 한개를 찾느냐 전부 찾느냐 차이 - Where와 Select
→조건을 만족하는 데이터가 참조 형식이냐 값 형식이냐의 차이
위 조건과 특징을 토대로 상황에 맞춰 필요한 값을 적절하게 뽑아서 사용할 수 있을거 같다.
'Unity > 문법' 카테고리의 다른 글
| [Unity] 상속 금지 클래스 (sealed) (0) | 2025.09.22 |
|---|---|
| [Unity]Random.Range와 Random().Next 차이점 (0) | 2025.04.15 |
| [Unity] if문과 switch case 문 (0) | 2025.04.14 |
| [Unity] 람다식의 이해 (0) | 2025.04.09 |