Rumah > pembangunan bahagian belakang > C++ > Bagaimanakah Foreach Loops berfungsi dalam C#, dan Kelas Mana yang Melaksanakannya?

Bagaimanakah Foreach Loops berfungsi dalam C#, dan Kelas Mana yang Melaksanakannya?

Patricia Arquette
Lepaskan: 2025-01-10 09:55:39
asal
762 orang telah melayarinya

How Do Foreach Loops Work in C#, and Which Classes Implement Them?

Memahami foreach Gelung C# dan Pelaksanaannya

Kelas Mana yang Menggunakan foreach Gelung?

Gelung foreach dalam C# banyak digunakan dengan kelas yang melaksanakan IEnumerable atau IEnumerable<T>. Ini termasuk mana-mana kelas yang menyediakan kaedah GetEnumerator() yang mengembalikan IEnumerator atau IEnumerator<T>. Pada asasnya, ini merangkumi semua kelas yang melaksanakan ICollection atau ICollection<T>, seperti tatasusunan, senarai dan koleksi lain.

foreach Mekanik Gelung:

Gelung foreach standard (mis., foreach (int i in obj) { ... }) secara fungsinya menyerupai ini:

var tmp = obj.GetEnumerator();
int i; // C# 4.0 and earlier
while (tmp.MoveNext()) {
    int i; // C# 5.0 and later
    i = tmp.Current;
    { ... } // Loop body
}
Salin selepas log masuk

Pertimbangan penting: Jika enumerator (tmp) melaksanakan IDisposable, ia akan dilupuskan (serupa dengan pernyataan using). Pengisytiharan int i berbeza bergantung pada versi C#. Dalam C# 5.0 dan kemudian, ia diisytiharkan di dalam gelung; versi terdahulu mengisytiharkannya di luar. Perbezaan ini penting apabila menggunakan i dalam kaedah tanpa nama atau ungkapan lambda di dalam gelung.

Atas ialah kandungan terperinci Bagaimanakah Foreach Loops berfungsi dalam C#, dan Kelas Mana yang Melaksanakannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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