C Enum,Int,String的互相轉換

2021-08-22 09:53:16 字數 1391 閱讀 3290

enum為列舉提供基類,其基礎型別可以是除 char 外的任何整型。如果沒有顯式宣告基礎型別,則使用int32。程式語言通常提供語法來宣告由一組已命名的常數和它們的值組成的列舉。

注意:列舉型別的基型別是除char外的任何整型,所以列舉型別的值是整型值。

enum 提供一些實用的靜態方法:

(1)比較列舉類的例項的方法

(2)將例項的值轉換為其字串表示形式的方法

(3)將數字的字串表示形式轉換為此類的例項的方法

(4)建立指定列舉和值的例項的方法。

舉例:enum colors ;

enum-->string

(1)利用object.tostring()方法:如colors.green.tostring()的值是"green"字串;

(2)利用enum的靜態方法getname與getnames:

public static string getname(type enumtype,object value)

public static string getnames(type enumtype)

例如:enum.getname(typeof(colors),3))與enum.getname(typeof(colors), colors.blue))的值都是"blue"

enum.getnames(typeof(colors))將返回列舉字串陣列。

string-->enum

(1)利用enum的靜態方法parse:

public static object parse(type enumtype,string value)

例如:(colors)enum.parse(typeof(colors), "red")

enum-->int

(1)因為列舉的基型別是除 char 外的整型,所以可以進行強制轉換。

例如:(int)colors.red, (byte)colors.green

int-->enum

(1)可以強制轉換將整型轉換成列舉型別。

例如:colors color = (colors)2 ,那麼color即為colors.blue

(2)利用enum的靜態方法toobject。

public static object toobject(type enumtype,int value)

例如:colors color = (colors)enum.toobject(typeof(colors), 2),那麼color即為colors.blue

**:

C Enum,Int,String的互相轉換

c enum,int,string的互相轉換 enum為列舉提供基類,其基礎型別可以是除 char 外的任何整型。如果沒有顯式宣告基礎型別,則使用 int32。程式語言通常提供語法來宣告由一組已命名的常數和它們的值組成的列舉。注意 列舉型別的基型別是除 char 外的任何整型,所以列舉型別的值是整型...

C Enum,Int,String的互相轉換

1 enum string 1 利用object.tostring 方法 如colors.green.tostring 的值是 green 字串 2 利用enum的靜態方法getname與getnames public static string getname type enumtype,obje...

C Enum,Int,String的互相轉換

稍作修改 enum為列舉提供基類,其基礎型別可以是除 char 外的任何整型。如果沒有顯式宣告基礎型別,則使用 int32。程式語言通常提供語法來宣告由一組已命名的常數和它們的值組成的列舉。注意 列舉型別的基型別是除 char 外的任何整型,所以列舉型別的值是整型值。enum 提供一些實用的靜態方法...