Метод GetValues
Статический GetValues<T> возвращает
массив типа T[] - например, Mark[],
а не Array. В нём перечислены все
константы в порядке объявления. Имена без
значений читают через
GetNames.
Синтаксис
Mark[] values = Enum.GetValues<Mark>();
Пример
Давайте выведем все значения перечисления:
using System;
enum Mark { None = 0, Read = 1, Write = 2 }
class Program
{
static void Main()
{
foreach (Mark item in Enum.GetValues<Mark>())
{
Console.WriteLine(item);
}
}
}
Результат выполнения кода:
"None"
"Read"
"Write"
Пример
Давайте выведем числовой код через
ToString("D"):
using System;
enum Code { A = 1, B = 2 }
class Program
{
static void Main()
{
foreach (Code item in Enum.GetValues<Code>())
{
Console.WriteLine(item.ToString("D"));
}
}
}
Результат выполнения кода:
"1"
"2"
Пример
Давайте выведем длину массива Mark[]:
using System;
enum Mark { None = 0, Read = 1, Write = 2 }
class Program
{
static void Main()
{
Mark[] values = Enum.GetValues<Mark>();
Console.WriteLine(values.Length);
}
}
Результат выполнения кода:
3