C#枚举反向索引

时间:2011-08-02 01:02:26

标签: c# enums

有没有办法使用整数索引从枚举中返回适当的值?例如,如果有枚举颜色{红色,绿色,蓝色),则有一个函数,值0将返回红色,1将返回绿色,2将返回蓝色?

4 个答案:

答案 0 :(得分:6)

Enum.GetName方法:http://msdn.microsoft.com/en-us/library/system.enum.getname.aspx

使用您的示例,

Console.WriteLine(Enum.GetName(typeof(Color), 1));

打印“绿色”

答案 1 :(得分:3)

您可以将整数值转换为枚举。

Color c = (Color)0; //Color.Red

答案 2 :(得分:1)

string color = ((Color)1).ToString(); //color is "Green"

使用Enum.ToString()方法。

http://msdn.microsoft.com/en-us/library/16c1xs4z.aspx

答案 3 :(得分:0)

这是笨重但是......

String Day = Enum.GetName(typeof(DayOfWeek), 3);