Akademi C# · Pelajaran

Mengulang Nilai Enum

Senaraikan semua ahli dengan Enum.GetValues.

Pelajaran 4 daripada 413 langkah

Mengulang Nilai Enum ialah pelajaran Akademi C# percuma di CoddyKit. Ini ialah pelajaran 4 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Akademi C#, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Akademi C# merangkumi sejumlah 4 pelajaran.

Menyenaraikan Ahli Enumerasi

Kadang-kadang Anda memerlukan setiap nilai dalam enumerasi, contohnya untuk membina menu. Enum.GetValues menyediakannya.

using System;

enum Day { Mon, Tue, Wed }
class Program {
    static void Main() {
        foreach (Day d in Enum.GetValues<Day>())
            Console.WriteLine(d);
    }
}

GetValues Generik

Enum.GetValues<T>() mengembalikan tatasusunan berjenis kukuh yang boleh anda lelar secara langsung.

using System;

enum Color { Red, Green, Blue }
class Program {
    static void Main() {
        Color[] all = Enum.GetValues<Color>();
        Console.WriteLine(all.Length);
    }
}

Mendapatkan Nama Ahli

Enum.GetNames<T>() mengembalikan nama ahli sebagai rentetan.

using System;

enum Color { Red, Green, Blue }
class Program {
    static void Main() {
        foreach (string name in Enum.GetNames<Color>())
            Console.WriteLine(name);
    }
}

Nama dan Nilai Bersama

Lerai nilai dan tukarkannya kepada int untuk mencetak nama serta nombor asasnya.

using System;

enum Color { Red = 1, Green = 2, Blue = 4 }
class Program {
    static void Main() {
        foreach (Color c in Enum.GetValues<Color>())
            Console.WriteLine(c + " = " + (int)c);
    }
}

Mengira Ahli

Panjang tatasusunan nilai memberitahu anda bilangan ahli yang terdapat dalam enumerasi.

using System;

enum Suit { Hearts, Diamonds, Clubs, Spades }
class Program {
    static void Main() {
        int count = Enum.GetValues<Suit>().Length;
        Console.WriteLine(count);
    }
}

Membina Menu

Melerai nilai sangat sesuai untuk mencetak senarai pilihan bernombor.

using System;

enum Option { Start, Settings, Quit }
class Program {
    static void Main() {
        int i = 1;
        foreach (Option o in Enum.GetValues<Option>())
            Console.WriteLine(i++ + ") " + o);
    }
}

Menapis Semasa Melerai

Anda boleh melangkau ahli tertentu, seperti penanda None, semasa melakukan lelaran.

using System;

enum State { None, Active, Closed }
class Program {
    static void Main() {
        foreach (State s in Enum.GetValues<State>())
            if (s != State.None)
                Console.WriteLine(s);
    }
}

Melerai dengan LINQ

Gabungkan Enum.GetValues dengan LINQ untuk penapisan atau transformasi.

using System;
using System.Linq;

enum Level { Low = 1, Medium = 2, High = 3 }
class Program {
    static void Main() {
        var highOnes = Enum.GetValues<Level>().Where(l => (int)l >= 2);
        foreach (var l in highOnes) Console.WriteLine(l);
    }
}

Bentuk Bukan Generik yang Lebih Lama

Sebelum generik diperkenalkan, anda menggunakan Enum.GetValues(typeof(T)), yang mengembalikan tatasusunan tanpa jenis khusus.

using System;

enum Color { Red, Green, Blue }
class Program {
    static void Main() {
        foreach (Color c in Enum.GetValues(typeof(Color)))
            Console.WriteLine(c);
    }
}

Flags dan Lelaran

Bagi enumerasi flags, lelaran menyenaraikan setiap flags secara berasingan; ahli gabungan yang mudah juga akan muncul, jadi lakukan penapisan jika perlu.

using System;

[Flags]
enum Perm { Read = 1, Write = 2, Execute = 4 }
class Program {
    static void Main() {
        foreach (Perm p in Enum.GetValues<Perm>())
            Console.WriteLine(p + " = " + (int)p);
    }
}

Sebab Enumerasi Dilerai

Melerai memastikan antara muka pengguna dan pengesahan sentiasa selaras dengan enumerasi: apabila anda menambah ahli, gelung akan menyertakannya secara automatik.

using System;

enum Size { Small, Medium, Large }
class Program {
    static void Main() {
        foreach (Size s in Enum.GetValues<Size>())
            Console.WriteLine("Available: " + s);
    }
}

Semakan Ringkas

Uji pemahaman anda tentang lelaran enumerasi.

Ulang Kaji

Enum.GetValues<T>() mengembalikan setiap ahli sebagai tatasusunan berjenis, manakala Enum.GetNames<T>() mengembalikan nama ahli tersebut. Anda boleh menggunakan gelung untuk mencetak nama bersama nilai berangka, mengira ahli, membina menu atau menapis dengan LINQ.

Melerai memastikan menu dan pengesahan sentiasa selaras secara automatik apabila enumerasi berkembang.

Percuma untuk bermula

Pelajari C# dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
93
Pelajaran
346

Soalan Lazim

Adakah pelajaran “Mengulang Nilai Enum” percuma?

Ya — teks penuh “Mengulang Nilai Enum” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Akademi C#, tingkat taraf kepada CoddyKit PRO. Kursus Akademi C# merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Mengulang Nilai Enum”?

Senaraikan semua ahli dengan Enum.GetValues. Anda berlatih Akademi C# menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Akademi C#?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Akademi C# di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 4 daripada 4.

Berapa lamakah pelajaran “Mengulang Nilai Enum” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Akademi C# ini?

Ya. Setiap pelajaran Akademi C# menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Mentakrifkan dan Menggunakan Enum
  2. Enum Flags dan Gabungan Bit
  3. Penukaran dan Penghuraian Enum
  4. Mengulang Nilai Enum
← Kembali ke Akademi C#