2011-08-02 181 views
2

有沒有辦法使用整數索引從枚舉中返回適當的值?例如,如果有枚舉顏色{紅色,綠色,藍色]是否有一個函數,對於值0將返回紅色,1將返回綠色,2將返回藍色?C#枚舉反向索引

+0

可能重複[如何從價值C#枚舉描述?(http://stackoverflow.com/questions/2650080/how-to- get-c-enum-description-from-value) – Jason

回答

6

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

使用你的榜樣,

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

打印 「綠色」

+2

請注意,如果你混淆了你的代碼,你會得到亂碼而不是人類可讀的名字。在這種情況下,編寫你自己的翻譯方法。 –

3

您可以將整數值轉換爲一個枚舉。

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

這是klunky但是......

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