이 문서는 기계 번역을 이용하여 번역되었습니다. 문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

Enumerable.Where<TSource> 메서드 (IEnumerable<TSource>, Func<TSource, Int32, Boolean>)

 

게시 날짜: 2016년 11월

조건자에 따라 값의 시퀀스를 필터링합니다. 조건자 함수의 논리에 각 요소의 인덱스가 사용됩니다.

네임스페이스:   System.Linq
어셈블리:  System.Core(System.Core.dll에 있음)

public static IEnumerable<TSource> Where<TSource>(
	this IEnumerable<TSource> source,
	Func<TSource, int, bool> predicate
)

매개 변수

source
Type: System.Collections.Generic.IEnumerable<TSource>

IEnumerable<T> 를 필터링 합니다.

predicate
Type: System.Func<TSource, Int32, Boolean>

각 소스 요소를 조건;에 대해 테스트 하는 함수 함수의 두 번째 매개 변수는 소스 요소의 인덱스를 나타냅니다.

반환 값

Type: System.Collections.Generic.IEnumerable<TSource>

IEnumerable<T> 입력된 시퀀스에서 조건에 맞는 요소가 들어 있는 합니다.

형식 매개 변수

TSource

요소 형식의 source합니다.

Exception Condition
ArgumentNullException

source 또는 predicatenull인 경우

이 메서드는 지연 된 실행을 사용 하 여 구현 됩니다. 즉시 반환 값은 작업을 수행 하는 데 필요한 모든 정보를 저장 하는 개체입니다. 이 방법으로 나타내는 쿼리 호출 개체가 열거 될 때까지 실행 되지 않습니다 해당 GetEnumerator 메서드를 사용 하 여 직접 또는 foreach 에서 Visual C# 또는 For Each 에 Visual Basic합니다.

첫 번째 인수 predicate 테스트 하는 요소를 나타냅니다. 두 번째 인수는 요소 내에서 0부터 시작 인덱스를 나타내는 source합니다.

다음 코드 예제에 사용 하는 방법을 보여 줍니다 Where<TSource>(IEnumerable<TSource>, Func<TSource, Int32, Boolean>) 인덱스의 각 요소와 관련 된 조건자에 따라 시퀀스를 필터링 합니다.

int[] numbers = { 0, 30, 20, 15, 90, 85, 40, 75 };

IEnumerable<int> query =
    numbers.Where((number, index) => number <= index * 10);

foreach (int number in query)
{
    Console.WriteLine(number);
}
/*
 This code produces the following output:

 0
 20
 15
 40
*/

유니버설 Windows 플랫폼
8 이후 사용 가능
.NET Framework
3.5 이후 사용 가능
이식 가능한 클래스 라이브러리
이식 가능한 .NET 플랫폼 에서 지원됨
Silverlight
2.0 이후 사용 가능
Windows Phone Silverlight
7.0 이후 사용 가능
Windows Phone
8.1 이후 사용 가능
맨 위로 이동
표시: