SkipWhile(TSource) 메서드 (IEnumerable(TSource), Func(TSource, Boolean))
이 문서는 기계로 번역한 것입니다. 원본 텍스트를 보려면 포인터를 문서의 문장 위로 올리십시오. 추가 정보
번역
원본

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

 

지정된 조건이 true이면 시퀀스에 있는 요소를 무시하고 나머지 요소를 반환합니다.

네임스페이스:   System.Linq
어셈블리:  System.Core.dll의 System.Core

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

매개 변수

source

요소를 반환할 IEnumerable<T>입니다.

predicate

각 요소를 조건에 대해 테스트하는 함수입니다.

반환 값

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

입력 시퀀스에서 predicate에 지정된 테스트를 통과하지 않는 급수의 첫 요소부터 시작되는 요소가 들어 있는 IEnumerable<T>입니다.

형식 매개 변수

TSource

source 요소의 형식입니다.

Exception Condition
ArgumentNullException

source 또는 predicatenull인 경우

SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource, Boolean>) 메서드는 지연된 실행을 사용하여 구현됩니다.해당 작업을 수행하는 데 필요한 모든 정보가 저장된 개체가 즉시 반환됩니다.이 메서드에서 나타내는 쿼리는 해당 GetEnumerator 메서드를 직접 호출하거나, foreach(Visual C#의 경우) 또는 For Each(Visual Basic의 경우)를 사용하여 개체를 열거할 때까지 실행되지 않습니다.

이 메서드는 predicate를 사용하여 source의 각 요소를 테스트하고 결과가 true이면 해당 요소를 건너뜁니다.조건자 함수가 요소에 대해 false를 반환하면 해당 요소와 source의 나머지 요소가 반환되고 predicate가 더 이상 호출되지 않습니다.

predicate가 시퀀스의 모든 요소에 대해 true를 반환하면 빈 IEnumerable<T>이 반환됩니다.

TakeWhileSkipWhile 메서드는 기능을 보완하는 메서드입니다.시퀀스 coll과 순수 함수 p가 있는 경우 coll.TakeWhile(p)coll.SkipWhile(p)의 결과를 연결하면 coll과 동일한 시퀀스가 됩니다.

Visual Basic 쿼리 식 구문에서 Skip While 절은 SkipWhile 호출로 변환됩니다.

다음 코드 예제에서는 SkipWhile<TSource>(IEnumerable<TSource>, Func<TSource, Boolean>)을 사용하여 특정 조건이 true인 경우 배열의 요소를 건너뛰는 방법을 보여 줍니다.

int[] grades = { 59, 82, 70, 56, 92, 98, 85 };

IEnumerable<int> lowerGrades =
    grades
    .OrderByDescending(grade => grade)
    .SkipWhile(grade => grade >= 80);

Console.WriteLine("All grades below 80:");
foreach (int grade in lowerGrades)
{
    Console.WriteLine(grade);
}

/*
 This code produces the following output:

 All grades below 80:
 70
 59
 56
*/

Universal Windows Platform
4.5 이후에 사용 가능
.NET Framework
3.5 이후에 사용 가능
Portable Class Library
portable .NET platforms에서 지원 portable .NET platforms
Silverlight
2.0 이후에 사용 가능
Windows Phone Silverlight
7.0 이후에 사용 가능
Windows Phone
8.1 이후에 사용 가능
맨 위로 이동
표시:
© 2016 Microsoft