C#枚举总结

C#枚举总结

  1.枚举的申明,用于申明新的枚举类型。枚举是值类型。

  访问修饰符 enum 枚举名 : 基础类型

  {

    枚举成员 //任意两个枚举成员不能具有相同的命名。

  }

举例:  

  enum colour :int //每个枚举都有一个底层整数类型,int是默认类型

  {        //每个枚举值都规定在int范围之内

  yellow = 1 ,  // 注意,是逗号,不是引号 

  red ,

  green ,     //最后一个逗号,可加可不加 

  }

  2.如何使用枚举

  colour.yellow //把一些我们需要使用的数据放进枚举里面,使用时可以方便调用。

  可以把枚举值赋值给枚举型变量,如:

  colour mycolour = colour.red ;

  colour yourcolour = colour.yellow ;

  colour ourcolour = yourcolour ;

  3.枚举成员默认值

  enum colour

  {

    yellow ,

    red ,

    green,

  }

  在默认情况下,编译器把第一个成员赋值为0,并对每一个后续成员赋值比前一个成员多1。即:yellow默认为0,red为1 ,greed是2.

  Console.WriteLine((int)colour.red)//显示数字是1。

  4.枚举类型与基础类型转换

  枚举类型与基础类型转换必须是显示转换,需强制转换符。不能是隐式转换。

  public enum number

  {

    a , b , c , d

  }

  class Test

  {

     public static void Main()

    {

      int i = number.a //出现错误,要强制类型转换(int)number.a

      number n ;

      n = 2 ; //出现错误,要强制转换(number)2

    }

  }

  5.使用枚举类型  

  enum colour

  {

    yellow = 1 ,

    red ,

    green ,

  }

  class ChoseColour

  {

    public void TestColour(colour mycolour)

  {

  switch (mycolour)

  {

    case colour.green:

    Console.WriteLine("I like green!");

    break;

    case colour.red:

    Console.WriteLine("I like red!");

    break;

  }

  

  class Program

  {

    static void Main(string[] args)

    {

      ChoseColour chose = new ChoseColour();

      chose.TestColour(colour.red);

    }

  }