Enumerable.Skip<TSource>(IEnumerable<TSource>, Int32) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Obchází zadaný počet prvků v sekvenci a vrátí zbývající prvky.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::IEnumerable<TSource> ^ Skip(System::Collections::Generic::IEnumerable<TSource> ^ source, int count);
public static System.Collections.Generic.IEnumerable<TSource> Skip<TSource>(this System.Collections.Generic.IEnumerable<TSource> source, int count);
static member Skip : seq<'Source> * int -> seq<'Source>
<Extension()>
Public Function Skip(Of TSource) (source As IEnumerable(Of TSource), count As Integer) As IEnumerable(Of TSource)
Parametry typu
- TSource
Typ prvků .source
Parametry
- source
- IEnumerable<TSource>
Návrat IEnumerable<T> prvků.
- count
- Int32
Počet prvků, které se mají přeskočit před vrácením zbývajících prvků.
Návraty
Obsahuje IEnumerable<T> prvky, ke kterým dochází po zadaném indexu ve vstupní sekvenci.
Výjimky
source je null.
Příklady
Následující příklad kódu ukazuje, jak lze přeskočit Skip zadaný počet prvků v poli a vrátit zbývající prvky.
int[] grades = { 59, 82, 70, 56, 92, 98, 85 };
Console.WriteLine("All grades except the first three:");
foreach (int grade in grades.Skip(3))
{
Console.WriteLine(grade);
}
/*
This code produces the following output:
All grades except the first three:
56
92
98
85
*/
' Create an array of integers that represent grades.
Dim grades() As Integer = {59, 82, 70, 56, 92, 98, 85}
' Sort the numbers in descending order and
' get all but the first (largest) three numbers.
Dim skippedGrades As IEnumerable(Of Integer) =
grades _
.Skip(3)
' Display the results.
Dim output As New System.Text.StringBuilder("All grades except the first three are:" & vbCrLf)
For Each grade As Integer In skippedGrades
output.AppendLine(grade)
Next
Console.WriteLine(output.ToString())
' This code produces the following output:
'
' All grades except the first three are:
' 56
' 92
' 98
' 85
Poznámky
Tato metoda se implementuje pomocí odloženého spuštění. Okamžitá návratová hodnota je objekt, který ukládá všechny informace potřebné k provedení akce. Dotaz reprezentovaný touto metodou se nespustí, dokud objekt nevyčte buď voláním metody GetEnumerator přímo nebo pomocí foreach v jazyce C# nebo For Each v Visual Basic.
Pokud source obsahuje méně prvků count , vrátí se prázdný IEnumerable<T> . Pokud count je menší nebo rovna nule, jsou všechny prvky source výnosné.
Metody Take jsou Skip funkční doplňky. Vzhledem k posloupnosti coll kolekce a celočíselnému nzřetězení výsledků coll.Take(n) a coll.Skip(n) výnosu stejné sekvence jako coll.
V syntaxi výrazu dotazu Visual Basic se klauzule Skip přeloží na vyvolání Skip.