[C# cơ bản] – Enum trong C# (Kiểu liệt kê)

Trong C#, Enum là một kiểu dữ liệu dạng giá trị (value type). Enum được sử dụng để khai báo một danh sách các hằng số có kiểu nguyên. Enum có thể được khai báo sử dụng từ khóa enum ngay trong namespace, class hoặc structure. Các bạn nên khai báo enum trong một namespace, để các class có thể truy cập được !

1. Cách khai báo

enum Tên tập hợp {

     Tên hằng số1, tên hằng số 2, tên hằng số 3,….tên hằng số n

};

Chú ý:

  • Mặc định, phần tử đầu tiên sẽ có giá trị 0, các phần tử tiếp theo sẽ có giá trị tăng lên 1.
  • Có thể ghi đè lên giá trị mặc định bằng giá trị khác khi khai báo.
  • Mặc định, enum có giá trị nguyên cho các hằng số, để khai báo kiểu khác như byte, các bạn sử dụng dấu : tên kiểu ngay sau tên tập hợp. Ví dụ: enum NgayTrongTuan : byte {danh sách các hằng số và giá trị}

Ví dụ 1: khai báo enum chứa danh sách các ngày trong tuần

Mặc định, ThuHai= 0, ThuBa= 1, ThuTu= 2, ThuNam= 3, ThuSau= 4, ThuBay= 5, ChuNhat= 6.

Ví dụ 2: khai báo enum chứa danh sách các ngày trong tuần với các giá trị nguyên tự định nghĩa.

Lúc này, ThuHai= 1, ThuBa= 3, ThuTu= 5, ThuNam= 7, ThuSau= 8, ThuBay= 9, ChuNhat= 10.

Ví dụ 3: khai báo enum chứa danh sách các ngày trong tuần với kiểu byte

2. Truy cập các giá trị của enum

Để truy cập, sử dụng tên enum.tên_hằng_số

Ví dụ 4: Định nghĩa danh sách các ngày trong tuần

/* Kết quả: ThuBa = 1, ThuSau = 4, ChuNhat = 6 */

Chú ý: Bạn phải sử dụng (int) trước NgayTrongTuan.ThuBa để ép về kiểu int mặc định của enum, hoặc là byte nếu bạn sử dụng khai báo enum kiểu byte.

Ví dụ 4: Viết chương trình cho người dùng nhập một số nguyên từ bàn phím (1-12), sau đó in ra tên tháng đó.

Kết quả:

Enum with switch in c#
Hình 4. Sử dụng enum kết hợp switch

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.