如何在C#中从`Enum` 中获取`int` 的值,并举例说明

要在C#中从enum 中获得int 的值,请将enum 变量转换为整数。

On this page

##解决方案1:使用类型转换来从int 值。enum

在C#中,enums 的默认基本类型是Int

所以我们可以将enum 类型转换为int ,以便在C#中从枚举中获得整数值。

我们将通过一个例子来进一步了解它。

public enum Days
{
        Monday,  
        Tuesday,  
        Wednesday,  
        Thursday,  
        Friday,  
        Saturday,  
        Sunday
}

现在,我们将把枚举值转换成整数值。

int mondayValue=(int)Days.Monday; //0
int tuesdayValue=(int)Days.Tuesday; //1
int wednesdayValue=(int)Days.Wednesday; //2
int thursdayValue=(int)Days.Thursday; //3
int fridayValue=(int)Days.Friday; //4
int saturdayValue=(int)Days.Saturday; //5
int sundayValue=(int)Days.Sunday; //6

##解决方案2:使用Convert.ToInt32() 方法从枚举中获取整数值

或者我们可以使用Convert.ToInt32() to 方法将enum 转换为整数,如下所示。

int mondayValue=Convert.ToInt32(Days.Moday); //0

获取不同底层类型的enum

Enums 在C#中可以有不同的底层类型。

如果C#枚举被声明为uint,long, 或ulong ,我们应该将其投递到相应的类型中,即enum

考虑下面的例子:Stars 枚举,它的类型是long

enum Stars:long 
{
    Sun = 1, Star1 = 2,Star2=3, .. Startn = n
};

var sunValue = (long)Stars.Sun;//1