C# 枚举(enum)-基础

  • C# 枚举(enum)-基础
  • C# 枚举(enum)-设计
  • C# 枚举(enum)-简单枚举与标志枚举

枚举提供成组的常数值,它们有助于使成员成为强类型以及提高代码的可读性。在 C# 中,使用 enum 来声明枚举。

枚举分为简单枚举标志枚举两种,将在第三节中详细介绍这二者。

基本语法示例

enum Day { Sun, Mon, Tue, Wed, Thu, Fri, Sat };

以下格式也可以:

enum Day
{
    Sun,
    Mon,
    Tue,
    Wed,
    Thu,
    Fri,
    Sat
};

枚举类型

枚举类型可以是:byte、sbyte、short、ushort、int、uint、long、ulong,如果没有指定类型,则默认为 int 类型。指定类型示例:

enum Day : byte { Sun, Mon, Tue, Wed, Thu, Fri, Sat };

枚举数的值

默认情况下,第一个枚举数的值为 0,后面每个枚举数的值在前一个枚举数的值基础上递增 1。当然,也可以自行指定,例如:

enum Day { Sun = 1, Mon, Tue, Wed, Thu, Fri, Sat };
enum Range { MIN = 0, MAX = 255 };
enum Range2 { MIN, M1 = 50, M2, MAX = 255 }; //MIN 为 0,M2 为 51

枚举数大小写敏感

比如以下枚举有两个枚举数:

enum EnumTest { Sun, sun }; //尽管如此,我们仍不推荐这样写

取枚举数的值

虽然枚举有类型,但取枚举数的值时,仍然需要进行类型转换。

public partial class _ENUM : System.Web.UI.Page
{
    enum Range { MIN = 0, MAX = 255 };
   
   
    protected void Page_Load(object sender, EventArgs e)
    {
        Response.Write(Range.MAX); //输出为:MAX
        Response.Write("<br>");
        Response.Write(((int)Range.MAX).ToString()); //输出为:255
    }
}

枚举不能放在函数中

枚举可以与类平级,也可以作为类的 field,但不能放在函数中。可以加 public 等修饰符。

相关阅读

  • 如何遍列 C# 枚举数的名称与值
  • C# 枚举(enum)-基础
  • C# 枚举(enum)-设计
  • C# 枚举(enum)-简单枚举与标志枚举

你可能感兴趣的