반응형
Enumerable.Where<TSource>(IEnumerable<TSource>, Func<TSource, Boolean>) 메서드
public static System.Collections.Generic.IEnumerable<TSource> Where<TSource>(this
System.Collections.Generic.IEnumerable<TSource> source,Func<TSource,bool> predicate);
매개변수
source IEnumerable<TSource>
필터링할 IEnumerable<T>
predicate Func<TSource, Boolean>
각 요소를 조건에 대해 테스트하는 함수
특정 조건으로 필터링해서 해당 조건에 부합하는 요소들만 취합하고 싶을 때 사용한다.
예제 코드
List<string> fruits =
new List<string> { "apple", "passionfruit", "banana", "mango",
"orange", "blueberry", "grape", "strawberry" };
IEnumerable<string> query = fruits.Where(fruit => fruit.Length < 6);
foreach (string fruit in query)
{
Console.WriteLine(fruit);
}
/*
This code produces the following output:
apple
mango
grape
*/
Enumerable.Where<TSource>(IEnumerable<TSource>, Func<TSource,Int32 Boolean>) 메서드
public static System.Collections.Generic.IEnumerable<TSource> Where<TSource> (this
System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,int,bool> predicate);
매개변수
source IEnumerable<TSource>
필터링할 IEnumerable<T>
predicate Func<TSource, Int32, Boolean>
각 요소를 조건에 대해 테스트하는 함수이며 해당 함수의 두번째 매개 변수는 요소의 인덱스를 나타낸다.
예제 코드
class Program
{
static void Main(string[] args)
{
List<int> ints = new List<int>() { 1, 2, 3, 4, 5, 6 };
var result = ints.Where((x, i) => i % 2 == 0);
foreach(var i in result)
{
Console.WriteLine(i);
}
// 1 3 5
}
}
출처
'프로그래밍 > C# LINQ' 카테고리의 다른 글
C# Linq - Enumerable.Reverse() (0) | 2024.02.19 |
---|---|
C# Linq - Enumerable.OfType() (1) | 2024.02.16 |
C# Linq - Enumerable.All() (0) | 2024.02.15 |
C# Linq - Enumerable.Range() (0) | 2023.12.18 |
C# Linq - Enumerable.Aggregate() (19) | 2023.06.26 |
댓글