Rumah > pembangunan bahagian belakang > C++ > Bagaimanakah Saya Boleh Mengulang Melalui Semua Nilai Enum dalam C#?

Bagaimanakah Saya Boleh Mengulang Melalui Semua Nilai Enum dalam C#?

Susan Sarandon
Lepaskan: 2025-01-17 09:47:11
asal
871 orang telah melayarinya

How Can I Iterate Through All Enum Values in C#?

Menghitung Nilai Enum dalam C#

Melongok semua kemungkinan nilai enum ialah keperluan biasa dalam pengaturcaraan C#. Begini cara anda boleh mencapainya:

Menggunakan Kaedah Enum.GetValues

Kaedah Enum.GetValues ​​mengembalikan tatasusunan semua nilai dalam jenis enum yang ditentukan. Anda boleh menggunakan tatasusunan ini untuk menggelung nilai menggunakan gelung foreach. Contohnya:

public enum Foos
{
    A,
    B,
    C
}

var values = Enum.GetValues(typeof(Foos));

foreach (var value in values)
{
    // Do something with the value
}
Salin selepas log masuk

Menggunakan Kaedah Enum.GetValues ​​yang Ditaip

Kaedah Enum.GetValues ​​juga mempunyai versi ditaip yang mengembalikan tatasusunan jenis enum yang ditentukan . Versi ini lebih mudah digunakan apabila anda mengetahui jenis enum pada masa penyusunan. Contohnya:

var values = Enum.GetValues(typeof(Foos)).Cast<Foos>();
Salin selepas log masuk

Menggunakan Kelas Pembantu

Untuk memudahkan proses mendapatkan nilai enum, anda boleh mencipta kelas pembantu yang menyediakan kaedah generik untuk mendapatkan semula nilai:

public static class EnumUtil
{
    public static IEnumerable<T> GetValues<T>()
    {
        return Enum.GetValues(typeof(T)).Cast<T>();
    }
}
Salin selepas log masuk

Penggunaan:

var values = EnumUtil.GetValues<Foos>();
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengulang Melalui Semua Nilai Enum 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