c#中的枚举评估

sar*_*ake 1 c# enums casting

假设我有以下枚举(取自MSDN示例):

enum Days {Sat=1, Sun, Mon, Tue, Wed, Thu, Fri};
Run Code Online (Sandbox Code Playgroud)

我可以在代码中使用如下:

int today = (int)Days.Sun;
Run Code Online (Sandbox Code Playgroud)

题:

我可以评估枚举吗?假设我有一个变量Day,其值为"Sun".Days.Day会评价Days.Sun吗?

谢谢!

请不要挂在天的例子上告诉我应该使用比较等...我希望用枚举替换数组的用法,因为它更紧凑.所以我正在寻找的本质上是一种从类似于数组的枚举中检索值的能力:

myArray [Day]哪天会评估数组密钥....

Tim*_*son 8

我是说得对,你是对的:

string day = "Sun";
Run Code Online (Sandbox Code Playgroud)

你想要取回价值Days.Sun吗?

如果是这样,请使用:

string day = "Sun";
Day day = (Day) Enum.Parse(typeof(Days), day);
Run Code Online (Sandbox Code Playgroud)