Enumerable.Zip Metode

Definisi

Overload

Zip<TFirst,TSecond,TResult>(IEnumerable<TFirst>, IEnumerable<TSecond>, Func<TFirst,TSecond,TResult>)

Menerapkan fungsi tertentu ke elemen yang sesuai dari dua urutan, menghasilkan urutan hasil.

Zip<TFirst,TSecond,TThird>(IEnumerable<TFirst>, IEnumerable<TSecond>, IEnumerable<TThird>)

Menghasilkan urutan tuple dengan elemen dari tiga urutan yang ditentukan.

Zip<TFirst,TSecond>(IEnumerable<TFirst>, IEnumerable<TSecond>)

Menghasilkan urutan tuple dengan elemen dari dua urutan yang ditentukan.

Zip<TFirst,TSecond,TResult>(IEnumerable<TFirst>, IEnumerable<TSecond>, Func<TFirst,TSecond,TResult>)

Sumber:
Zip.cs
Sumber:
Zip.cs
Sumber:
Zip.cs

Menerapkan fungsi tertentu ke elemen yang sesuai dari dua urutan, menghasilkan urutan hasil.

public:
generic <typename TFirst, typename TSecond, typename TResult>
[System::Runtime::CompilerServices::Extension]
 static System::Collections::Generic::IEnumerable<TResult> ^ Zip(System::Collections::Generic::IEnumerable<TFirst> ^ first, System::Collections::Generic::IEnumerable<TSecond> ^ second, Func<TFirst, TSecond, TResult> ^ resultSelector);
public static System.Collections.Generic.IEnumerable<TResult> Zip<TFirst,TSecond,TResult> (this System.Collections.Generic.IEnumerable<TFirst> first, System.Collections.Generic.IEnumerable<TSecond> second, Func<TFirst,TSecond,TResult> resultSelector);
static member Zip : seq<'First> * seq<'Second> * Func<'First, 'Second, 'Result> -> seq<'Result>
<Extension()>
Public Function Zip(Of TFirst, TSecond, TResult) (first As IEnumerable(Of TFirst), second As IEnumerable(Of TSecond), resultSelector As Func(Of TFirst, TSecond, TResult)) As IEnumerable(Of TResult)

Jenis parameter

TFirst

Jenis elemen urutan input pertama.

TSecond

Jenis elemen urutan input kedua.

TResult

Jenis elemen urutan hasil.

Parameter

first
IEnumerable<TFirst>

Urutan pertama untuk digabungkan.

second
IEnumerable<TSecond>

Urutan kedua untuk digabungkan.

resultSelector
Func<TFirst,TSecond,TResult>

Fungsi yang menentukan cara menggabungkan elemen dari dua urutan.

Mengembalikan

IEnumerable<TResult>

Yang IEnumerable<T> berisi elemen gabungan dari dua urutan input.

Pengecualian

first atau second adalah null.

Contoh

Contoh kode berikut menunjukkan cara menggunakan Zip metode untuk menggabungkan dua urutan.

int[] numbers = { 1, 2, 3, 4 };
string[] words = { "one", "two", "three" };

var numbersAndWords = numbers.Zip(words, (first, second) => first + " " + second);

foreach (var item in numbersAndWords)
    Console.WriteLine(item);

// This code produces the following output:

// 1 one
// 2 two
// 3 three
Dim numbers() As Integer = {1, 2, 3, 4}
Dim words() As String = {"one", "two", "three"}
Dim numbersAndWords = numbers.Zip(words, Function(first, second) first & " " & second)

For Each item In numbersAndWords
    Console.WriteLine(item)
Next

' This code produces the following output:

' 1 one
' 2 two
' 3 three

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 dalam C# atau For Each di Visual Basic.

Metode ini menggabungkan setiap elemen urutan pertama dengan elemen yang memiliki indeks yang sama dalam urutan kedua. Jika urutan tidak memiliki jumlah elemen yang sama, metode menggabungkan urutan hingga mencapai akhir salah satunya. Misalnya, jika satu urutan memiliki tiga elemen dan yang lainnya memiliki empat, urutan hasil hanya akan memiliki tiga elemen.

Lihat juga

Berlaku untuk

Zip<TFirst,TSecond,TThird>(IEnumerable<TFirst>, IEnumerable<TSecond>, IEnumerable<TThird>)

Sumber:
Zip.cs
Sumber:
Zip.cs
Sumber:
Zip.cs

Menghasilkan urutan tuple dengan elemen dari tiga urutan yang ditentukan.

public:
generic <typename TFirst, typename TSecond, typename TThird>
[System::Runtime::CompilerServices::Extension]
 static System::Collections::Generic::IEnumerable<ValueTuple<TFirst, TSecond, TThird>> ^ Zip(System::Collections::Generic::IEnumerable<TFirst> ^ first, System::Collections::Generic::IEnumerable<TSecond> ^ second, System::Collections::Generic::IEnumerable<TThird> ^ third);
public static System.Collections.Generic.IEnumerable<(TFirst First, TSecond Second, TThird Third)> Zip<TFirst,TSecond,TThird> (this System.Collections.Generic.IEnumerable<TFirst> first, System.Collections.Generic.IEnumerable<TSecond> second, System.Collections.Generic.IEnumerable<TThird> third);
static member Zip : seq<'First> * seq<'Second> * seq<'hird> -> seq<ValueTuple<'First, 'Second, 'hird>>
<Extension()>
Public Function Zip(Of TFirst, TSecond, TThird) (first As IEnumerable(Of TFirst), second As IEnumerable(Of TSecond), third As IEnumerable(Of TThird)) As IEnumerable(Of ValueTuple(Of TFirst, TSecond, TThird))

Jenis parameter

TFirst

Jenis elemen urutan input pertama.

TSecond

Jenis elemen urutan input kedua.

TThird

Jenis elemen urutan input ketiga.

Parameter

first
IEnumerable<TFirst>

Urutan pertama untuk digabungkan.

second
IEnumerable<TSecond>

Urutan kedua untuk digabungkan.

third
IEnumerable<TThird>

Urutan ketiga untuk digabungkan.

Mengembalikan

IEnumerable<ValueTuple<TFirst,TSecond,TThird>>

Urutan tuple dengan elemen yang diambil dari urutan pertama, kedua, dan ketiga, dalam urutan tersebut.

Lihat juga

Berlaku untuk

Zip<TFirst,TSecond>(IEnumerable<TFirst>, IEnumerable<TSecond>)

Sumber:
Zip.cs
Sumber:
Zip.cs
Sumber:
Zip.cs

Menghasilkan urutan tuple dengan elemen dari dua urutan yang ditentukan.

public:
generic <typename TFirst, typename TSecond>
[System::Runtime::CompilerServices::Extension]
 static System::Collections::Generic::IEnumerable<ValueTuple<TFirst, TSecond>> ^ Zip(System::Collections::Generic::IEnumerable<TFirst> ^ first, System::Collections::Generic::IEnumerable<TSecond> ^ second);
public static System.Collections.Generic.IEnumerable<(TFirst First, TSecond Second)> Zip<TFirst,TSecond> (this System.Collections.Generic.IEnumerable<TFirst> first, System.Collections.Generic.IEnumerable<TSecond> second);
static member Zip : seq<'First> * seq<'Second> -> seq<ValueTuple<'First, 'Second>>
<Extension()>
Public Function Zip(Of TFirst, TSecond) (first As IEnumerable(Of TFirst), second As IEnumerable(Of TSecond)) As IEnumerable(Of ValueTuple(Of TFirst, TSecond))

Jenis parameter

TFirst

Jenis elemen urutan input pertama.

TSecond

Jenis elemen urutan input kedua.

Parameter

first
IEnumerable<TFirst>

Urutan pertama untuk digabungkan.

second
IEnumerable<TSecond>

Urutan kedua untuk digabungkan.

Mengembalikan

IEnumerable<ValueTuple<TFirst,TSecond>>

Urutan tuple dengan elemen yang diambil dari urutan pertama dan kedua, dalam urutan tersebut.

Lihat juga

Berlaku untuk