Bảng liệt kê C#

Bang Liet Ke C



C# là ngôn ngữ lập trình được sử dụng để phát triển các chương trình, trang web, ứng dụng Android, trò chơi, v.v. C# hỗ trợ các thư viện và khung khác nhau có chức năng tích hợp sẵn. Enum là một kiểu liệt kê, nó là một lớp. Một lớp có các kiểu dữ liệu và chức năng khác nhau trong đó, một cấu trúc dữ liệu chứa các biến khác nhau trong đó. Việc liệt kê đặc biệt hữu ích khi chúng ta biết tất cả các biến tại thời điểm biên dịch mà người dùng định nghĩa các kiểu dữ liệu trong đó. Enum chứa các giá trị khác nhau và những giá trị đó không thể thay đổi được. Các giá trị có thể được truy xuất và sử dụng trong mã nhưng chúng tôi không thể thay đổi các giá trị trong thời gian chạy, các giá trị này chỉ có thể đọc được và không thể thay đổi được. Phép liệt kê xử lý tất cả dữ liệu trong đó dưới dạng một chuỗi, nếu chúng ta muốn sử dụng một giá trị số nguyên, chúng ta cần gõ ép kiểu. Việc liệt kê rất hữu ích vì chúng chiếm ít bộ nhớ và không gian hơn.

cú pháp







enum E_Name { Giá trị_1, Giá trị_2, Giá trị_3,….. } ;


Hoặc



enum E_Name { Giá trị_1 = 3. 4 , Giá trị_2 = 90 , Giá trị_3 = số 8 ,….. } ;


thuộc tính 'enum' là từ khóa để xác định kiểu liệt kê. Bất cứ khi nào chúng tôi cần các loại dữ liệu do người dùng xác định, ‘ liệt kê từ khóa được sử dụng để tạo kiểu dữ liệu do người dùng xác định. Các ' E_name' là tên của lớp enum. Bên trong lớp dấu ngoặc nhọn này sẽ chứa tất cả các tham số và giá trị trong đó. Chúng ta chỉ có thể viết các đối số và trình biên dịch sẽ gán giá trị cho chúng. Theo mặc định, bắt đầu từ giá trị đầu tiên lưu trữ trong chỉ mục 0 và giá trị tiếp theo trên 1, v.v.



Không có hạn chế về kiểu dữ liệu của các đối số, chúng ta có thể gán giá trị số nguyên, giá trị dấu phẩy động, ký tự, Boolean hoặc chuỗi. Nhưng nếu chúng ta không gán kiểu dữ liệu cho các giá trị, nó sẽ tự động gán cho chúng giá trị không đổi nơi chúng được lưu trữ.





các loại

Trong ngôn ngữ C#, có hai kiểu liệt kê. Chúng được liệt kê dưới đây:

    • liệt kê đơn giản
    • liệt kê cờ

liệt kê đơn giản

Trong danh mục này, các thành viên của lớp 'enum' chứa một giá trị duy nhất.



Cờ liệt kê

Trong danh mục này, thành viên của lớp enum cờ chứa nhiều giá trị hoặc nhiều giá trị sử dụng toán tử bitwise hoặc sử dụng OR (|).

Ví dụ 1:

Trong trường hợp này, chúng ta sẽ tìm hiểu cách sử dụng lớp 'enum' đơn giản và truy xuất các giá trị mà không cần gán chúng cho các biến.


Để viết mã bằng ngôn ngữ lập trình C#, trước tiên chúng ta cần tạo dự án mới và sau đó bắt đầu viết mã. Khi chúng ta muốn tạo một ứng dụng bảng điều khiển, chúng ta nên chọn ứng dụng bảng điều khiển, C# framework, ứng dụng này sẽ tự động viết lớp và hàm main(). Để sử dụng thuật ngữ đơn giản 'enum' ở trên trong mã, chúng tôi sẽ xác định và khởi tạo lớp nội bộ 'Chương trình'. Vì enum là từ khóa và từ tiếp theo sau enum là 'fruit_names'. Bên trong dấu ngoặc nhọn, chúng tôi xác định danh sách chúng tôi muốn. Ở đây, lớp enum chứa tên bốn loại trái cây. Chúng ta gọi tất cả các hàm bên trong phương thức main(). Bên trong main() tĩnh, chúng ta sẽ lần lượt hiển thị tất cả các giá trị enum. Trong mã này, chúng tôi chỉ viết các đối số enum, không phải các giá trị. Vì vậy, nó sẽ tự động gán cho chúng các chỉ mục nơi chúng được lưu trữ dưới dạng giá trị.

Hàm console.writeline() được sử dụng để viết trên màn hình đầu ra và sau khi trình bày thông báo, nó sẽ di chuyển con trỏ tới dòng tiếp theo. Bên trong câu lệnh này, hãy viết một thông báo và nối nó với dấu '+' để hiển thị thông báo đã xác định đó với giá trị. Sau khi nối, hãy nhập 'enum name' và sử dụng (.) để giải quyết một loại 'enum' cụ thể: fruit_names.Apple. Sau đó, trong câu lệnh tiếp theo, một lần nữa sử dụng dấu (+) để nối loại với thông báo và chỉ mục nơi nó được lưu trữ. Để có được chỉ mục, trước tiên chúng ta cần chuyển đổi nó thành một số nguyên bằng cách thực hiện đánh máy. Trong kiểu C#, việc ép kiểu được thực hiện chỉ bằng cách sử dụng dấu ngoặc đơn. Bên trong dấu ngoặc đơn, hãy viết kiểu dữ liệu mà chúng ta muốn đánh máy. Bên ngoài dấu ngoặc đơn, hãy viết tên biến tức là (int)var_name. Bằng cách này, chúng ta có thể nhận được thông báo với giá trị enum và chỉ mục nơi nó đang được lưu trữ.

Lặp lại điều này ba lần; chỉ cần thay đổi thông báo và loại enum. Việc liệt kê làm cho mã trông đẹp và sạch sẽ. Hàm Console.ReadKey() sẽ giữ cho bảng điều khiển hoạt động cho đến khi chúng ta đóng nó. Nếu chúng ta không sử dụng câu lệnh này, bảng điều khiển sẽ nhấp nháy một lần rồi biến mất.

Ví dụ 2:

Trong chương trình này, chúng tôi sẽ triển khai lớp 'enum' đơn giản bằng cách gán các giá trị khác nhau cho các thuộc tính của lớp.


Trong ví dụ thứ hai, chúng tôi lại tạo một dự án cho ứng dụng bảng điều khiển và xác định một phép liệt kê bên trong lớp nội bộ 'Chương trình' với từ khóa 'enum'. Lần này nó chứa lớp 'items' với các giá trị khác nhau. Bên trong hàm main(), chúng ta sẽ truy cập tất cả các phần tử của lớp enum ‘items’. Hãy để chúng tôi sử dụng phương thức console.writeLine(). Nó sẽ hiển thị mọi thứ nó có trong đó. Đầu tiên, hiển thị một thông báo, sau đó gọi lại hàm Console.WriteLine() để hiển thị mục đầu tiên với số lượng. Xác định văn bản mà chúng tôi muốn hiển thị trên thiết bị đầu cuối và nối nó với items.chairs. Nó sẽ nhận được mục đầu tiên (ghế) của 'mục' của lớp enum. Để lấy được số lượng của mặt hàng này, chúng ta cần thực hiện ép kiểu vì dữ liệu trong lớp enum có dạng chuỗi. Vì vậy, để truy cập các giá trị của chúng, trước tiên chúng ta nhập cast. Để lấy giá trị của 'ghế', hãy truyền như (int)items.chairs. Nếu không, chúng tôi sẽ chỉ nhận được mặt hàng 'ghế' chứ không phải giá trị của nó. Ở đây, nếu chúng ta để ý, các ký hiệu '\ n' và '\ t' được sử dụng. Bằng cách sử dụng '\ t', chúng tôi cung cấp một không gian tab và bằng cách sử dụng '\ n', chúng tôi sẽ di chuyển con trỏ đến dòng tiếp theo. Lặp lại thủ tục này hai lần. Chúng ta chỉ cần cập nhật các giá trị enum. Cuối cùng, chỉ cần viết console.ReadKey() để giữ cho bàn điều khiển hoạt động để chúng ta có thể xem đầu ra.

Ví dụ 3:

Chúng tôi sẽ sử dụng 'cờ' enum trong trường hợp này.


Trong kiểu liệt kê đơn giản, chúng ta chỉ có thể gán một giá trị cho thành viên của lớp enum. Nhưng với phép liệt kê cờ, chúng ta có thể gán nhiều hơn một giá trị cho một thành viên của lớp enum. Kiểu liệt kê này rất hữu ích khi chúng ta xử lý các lựa chọn khác nhau và khi chúng ta có nhiều hơn một giá trị. Để sử dụng kiểu liệt kê cờ, trước khi định nghĩa một lớp enum, chúng ta phải viết [flags] và sau đó viết lớp enum ‘flag_example’. Bây giờ, bên trong lớp này, chúng ta có thể dễ dàng gán nhiều hơn một giá trị cho một thành viên. Trong ví dụ này, chúng tôi đã gán hai giá trị cho thuộc tính 'trình điều khiển' và phân tách cả hai giá trị bằng cách sử dụng toán tử (|). Sau đó, trong hàm main() khai báo một biến 'var flags'. Để hiển thị nhiều mục trên bảng điều khiển, hãy sử dụng toán tử hoặc (|) rồi gọi các mục enum bằng tên lớp và tên mục. Để hiển thị một thông báo, hãy gọi phương thức Console.WriteLine(). Để thể hiện giá trị của cờ, hãy viết 'flag' trong một Console.Write() khác. Trong câu lệnh tiếp theo, hàm Console.ReadKey() được gọi sẽ giữ cho bảng điều khiển mở cho đến khi chúng ta đóng nó.

Sự kết luận

Trong hướng dẫn này, chúng ta đã học về liệt kê, nó là gì và làm thế nào chúng ta có thể sử dụng nó trong ngôn ngữ C#. Việc liệt kê làm cho mã đơn giản và dễ đọc. Bởi vì các giá trị trong lớp enum không thể thay đổi được. Nó mang lại cho chúng tôi những lợi ích khi chúng tôi đang xử lý loại dữ liệu không yêu cầu thay đổi giá trị. Chúng ta đã thảo luận về cú pháp và các kiểu liệt kê với sự trợ giúp của các mã khác nhau. Việc liệt kê tốn ít bộ nhớ hơn và dễ sử dụng.