Rumah > pembangunan bahagian belakang > C++ > Bagaimanakah Saya Boleh Mengulang Lebih Dua Senarai Secara Serentak Menggunakan Satu Gelung ForEach dalam C#?

Bagaimanakah Saya Boleh Mengulang Lebih Dua Senarai Secara Serentak Menggunakan Satu Gelung ForEach dalam C#?

Barbara Streisand
Lepaskan: 2024-12-31 05:37:10
asal
639 orang telah melayarinya

How Can I Iterate Over Two Lists Simultaneously Using a Single ForEach Loop in C#?

Lelaran Dua Senarai dengan Satu Gelung ForEach dalam C#

Zip ialah ciri C# yang diperkenalkan dalam .NET 4 yang memudahkan lelaran berbilang koleksi menggunakan gelung tunggal. Ia mencapai ini dengan menggandingkan elemen daripada setiap koleksi ke dalam objek komposit tunggal, yang kemudiannya boleh diulang.

Untuk menggambarkan, pertimbangkan kod berikut:

List<string> listA = new List<string> { "string", "string" };
List<string> listB = new List<string> { "string", "string" };

var result = listA.Zip(listB, (a, b) => new { A = a, B = b });

foreach (var pair in result)
{
    Console.WriteLine($"{pair.A} - {pair.B}");
}
Salin selepas log masuk

Dalam contoh di atas, kaedah Zip memasangkan elemen dari kedua-dua listA dan listB ke dalam jenis tanpa nama yang mengandungi kedua-dua nilai. Gelung foreach kemudian beralih ke koleksi jenis tanpa nama ini, membolehkan anda mengakses kedua-dua nilai dalam setiap pasangan.

Sebagai alternatif, anda boleh menggunakan tuple untuk mencapai hasil yang sama:

foreach (var pair in listA.Zip(listB, Tuple.Create))
{
    Console.WriteLine($"{pair.Item1} - {pair.Item2}");
}
Salin selepas log masuk

Dengan memanfaatkan operasi Zip, anda boleh mengulangi berbilang koleksi dengan mudah dan menggabungkan elemennya menjadi satu objek komposit untuk pemprosesan yang cekap.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengulang Lebih Dua Senarai Secara Serentak Menggunakan Satu Gelung ForEach dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan