.net框架 - Enum枚举

概要

  在C#或C++,java等一些计算机编程语言中,枚举类型是一种基本数据类型而不是构造数据类型。

  在C语言等计算机编程语言中,它是一种构造数据类型。

  它用于声明一组命名的常数,当一个变量有几种可能的取值时,可以将它定义为枚举类型。

  

枚举成员  

  枚举成员是该枚举类型的命名常数,任意两个枚举成员不能具有相同的名称。

  每个枚举成员均具有相关联的常数值,此值的类型就是枚举的基础类型。

  C#中枚举基础类型可为:byte、sbyte、short、ushort、int、uint、long 或 ulong。

  C#中枚举基础类型默认为int。

  若不显示为枚举成员赋值,其成员值依成员顺序依次为0,1,2,3....n。

//基础类型默认为int
public enum MyEnum
{
    中国 = 1,    //枚举成员常数值类型为int
    美国 = 2,
    日本 = 3
}

//定义基础类型为long的枚举
public enum MyEnum2 : long
{
    中国 = 1L,    //枚举成员常数值类型为long
    美国 = 2L,
    日本 = 3L
}

 

枚举类型基本操作

  枚举类型转换、常用的方法,见示例代码:

public void EnumTest()
{
    MyEnum myEnum = MyEnum.中国;
     int myEnumValue = (int)myEnum;  //myEnumValue = 1;
     string myEnumText = myEnum.ToString();  //myEnumText="中国"

    MyEnum myEnum2 = (MyEnum)Enum.Parse(typeof(MyEnum), "2"); //myEnum2 = MyEnum.美国
    MyEnum myEnum3 = (MyEnum)Enum.Parse(typeof(MyEnum), "日本"); //myEnum2 = MyEnum.日本

    if(Enum.IsDefined(typeof(MyEnum),"日本"))
    {
         //MyEnum有成员名为“日本”的成员
    }

    if (Enum.IsDefined(typeof(MyEnum), "2"))
     {
        //MyEnum有成员值为“2”的成员
    }
}

 public enum MyEnum 
 {
     中国 = 1,
     美国 = 2,
     日本 = 3
}    

 

参考

  http://www.360doc.com/content/14/0516/16/10966281_378264063.shtml

  http://baike.baidu.com/link?url=gKDBE4hHGZFMgou2OWJu8rM27E7zGzi_Wq1xORoQmho73kudlBKt6WmUSt6_vETfdxz8QaLcbCJ9tTTohkgs4y0bD7iS_99LG90GFWbEetPJ4snCMsFD60rqWEQgt3O7

posted @ 2017-02-23 10:42  水手哥  阅读(217)  评论(0编辑  收藏  举报