Giới thiệu
Phương thức tĩnh Enum.GetNames(Type enumType) trả về mảng string chứa tên của tất cả hằng số trong enum. Thứ tự theo giá trị tăng dần (không phải thứ tự khai báo).
Ví dụ cơ bản
enum Vehicle { Car, Motorbike, Truck }
string[] names = Enum.GetNames(typeof(Vehicle));
// ["Car", "Motorbike", "Truck"]
Ví dụ hoàn chỉnh
using System;
class Demo
{
enum Vehicle { Car, Motorbike, Truck }
static void Main()
{
foreach (string res in Enum.GetNames(typeof(Vehicle)))
Console.WriteLine(res);
}
}
Kết quả
Car Motorbike Truck
Các phương thức Enum liên quan
| Phương thức | Trả về | Mô tả |
|---|---|---|
GetNames(Type) | string[] | Tên tất cả hằng số |
GetValues(Type) | Array | Giá trị tất cả hằng số (cần cast) |
GetName(Type, object) | string | Tên của 1 giá trị cụ thể |
IsDefined(Type, object) | bool | Kiểm tra giá trị có trong enum |
Parse(Type, string) | object | Parse string thành enum |
TryParse(Type, string, out) | bool | Parse an toàn |
Ví dụ GetValues
foreach (Vehicle v in Enum.GetValues(typeof(Vehicle)))
Console.WriteLine($"{v} = {(int)v}");
// Car = 0
// Motorbike = 1
// Truck = 2
Lưu ý
- Trả về mảng mới mỗi lần gọi (allocation). Cache nếu gọi nhiều.
- Thứ tự: theo giá trị underlying type (mặc định int) tăng dần.
- Dùng
nameof(Vehicle.Car)cho tên tại compile-time (refactor-safe).