Enumerable.Take Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Overload
Take<TSource>(IEnumerable<TSource>, Int32) |
Mengembalikan jumlah elemen yang bersebelahan yang ditentukan dari awal urutan. |
Take<TSource>(IEnumerable<TSource>, Range) |
Mengembalikan rentang elemen yang bersebelahan yang ditentukan dari urutan. |
Take<TSource>(IEnumerable<TSource>, Int32)
- Sumber:
- Take.cs
- Sumber:
- Take.cs
- Sumber:
- Take.cs
Mengembalikan jumlah elemen yang bersebelahan yang ditentukan dari awal urutan.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::IEnumerable<TSource> ^ Take(System::Collections::Generic::IEnumerable<TSource> ^ source, int count);
public static System.Collections.Generic.IEnumerable<TSource> Take<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, int count);
static member Take : seq<'Source> * int -> seq<'Source>
<Extension()>
Public Function Take(Of TSource) (source As IEnumerable(Of TSource), count As Integer) As IEnumerable(Of TSource)
Jenis parameter
- TSource
Jenis elemen source
.
Parameter
- source
- IEnumerable<TSource>
Urutan untuk mengembalikan elemen dari.
- count
- Int32
Jumlah elemen yang akan dikembalikan.
Mengembalikan
Yang IEnumerable<T> berisi jumlah elemen yang ditentukan dari awal urutan input.
Pengecualian
source
adalah null
.
Contoh
Contoh kode berikut menunjukkan cara menggunakan Take untuk mengembalikan elemen dari awal urutan.
int[] grades = { 59, 82, 70, 56, 92, 98, 85 };
IEnumerable<int> topThreeGrades =
grades.OrderByDescending(grade => grade).Take(3);
Console.WriteLine("The top three grades are:");
foreach (int grade in topThreeGrades)
{
Console.WriteLine(grade);
}
/*
This code produces the following output:
The top three grades are:
98
92
85
*/
' Create an array of Integer values that represent grades.
Dim grades() As Integer = {59, 82, 70, 56, 92, 98, 85}
' Get the highest three grades by first sorting
' them in descending order and then taking the
' first three values.
Dim topThreeGrades As IEnumerable(Of Integer) =
grades _
.OrderByDescending(Function(grade) grade) _
.Take(3)
' Display the results.
Dim output As New System.Text.StringBuilder("The top three grades are:" & vbCrLf)
For Each grade As Integer In topThreeGrades
output.AppendLine(grade)
Next
Console.WriteLine(output.ToString())
' This code produces the following output:
'
' The top three grades are:
' 98
' 92
' 85
Keterangan
Metode ini diimplementasikan dengan menggunakan eksekusi yang ditangguhkan. Nilai pengembalian langsung adalah objek yang menyimpan semua informasi yang diperlukan untuk melakukan tindakan. Kueri yang diwakili oleh metode ini tidak dijalankan sampai objek dijumlahkan baik dengan memanggil metodenya GetEnumerator
secara langsung atau dengan menggunakan foreach
di C# atau For Each
di Visual Basic.
Takesource
menghitung dan menghasilkan elemen sampai count
elemen telah dihasilkan atau source
tidak berisi elemen lagi. Jika count
melebihi jumlah elemen dalam source
, semua elemen source
dikembalikan.
Jika count
kurang dari atau sama dengan nol, source
tidak dijumlahkan dan kosong IEnumerable<T> dikembalikan.
Metode Take dan Skip adalah pelengkap fungsi. Mengingat urutan coll
koleksi dan bilangan coll.Take(n)
bulat n
, menggabungkan hasil dan coll.Skip(n)
menghasilkan urutan yang sama dengan coll
.
Dalam sintaks ekspresi kueri Visual Basic, Take
klausa diterjemahkan ke pemanggilan Take.
Lihat juga
Berlaku untuk
Take<TSource>(IEnumerable<TSource>, Range)
- Sumber:
- Take.cs
- Sumber:
- Take.cs
- Sumber:
- Take.cs
Mengembalikan rentang elemen yang bersebelahan yang ditentukan dari urutan.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::IEnumerable<TSource> ^ Take(System::Collections::Generic::IEnumerable<TSource> ^ source, Range range);
public static System.Collections.Generic.IEnumerable<TSource> Take<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Range range);
static member Take : seq<'Source> * Range -> seq<'Source>
<Extension()>
Public Function Take(Of TSource) (source As IEnumerable(Of TSource), range As Range) As IEnumerable(Of TSource)
Jenis parameter
- TSource
Jenis elemen source
.
Parameter
- source
- IEnumerable<TSource>
Urutan untuk mengembalikan elemen dari.
- range
- Range
Rentang elemen yang akan dikembalikan, yang memiliki indeks awal dan akhir baik dari awal atau akhir urutan.
Mengembalikan
Yang IEnumerable<T> berisi rentang elemen yang ditentukan dari source
urutan .
Pengecualian
source
adalah null
.
Keterangan
Metode ini diimplementasikan dengan menggunakan eksekusi yang ditangguhkan. Nilai pengembalian langsung adalah objek yang menyimpan semua informasi yang diperlukan untuk melakukan tindakan. Kueri yang diwakili oleh metode ini tidak dijalankan sampai objek dijumlahkan baik dengan memanggil metodenya GetEnumerator
secara langsung atau dengan menggunakan foreach
di C# atau For Each
di Visual Basic.
Takesource
menghitung dan menghasilkan elemen yang indeksnya termasuk dalam .range