如何定义和使用枚举
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
public enum TimeofDay:uint {
Morning, Afternoon,
Evening } Morning 的值为 0,Afternoon 的值为 1,Evening 的值为 2。 ( 4 ) 为枚举成员显 示赋值 允许多个枚举成员有相同的值. 没有显示赋值的枚举成员的值,总是前一个枚举成员的值+1. 示例 public enum Number {
何枚举类型中都可用。
System.Enum 本身不是枚举类型。相反,它是一个类类型,所有枚举类型都是从它派
生的。
System.Enum 从类型 System.ValueType 派生
( 7 ) 使用枚举类型
using System;
public enum TimeofDay
{
Morning,
Afternoon,
( 2 ) 枚举成员 枚举成员是该枚举类型的命名常数。任意两个枚举成员不能具有相同的名称。每个枚举 成员均具有相关联的常数值。此值的类型就是枚举的基础类型。每个枚举成员的常数值必须 在该枚举的基础类型的范围之内。 示例:
public enum TimeofDay:uint { Morning=-3, Afternoon=-2, Evening=-1 }
}
a=1, b, c=1, d } b 的值为 2,d 的值为 2. 注意:以上枚举值都不能超过它的基础类型范围。否则会报错. ( 5 ) 枚举类型与基 础类型的转换 基础类型不能隐式转换为枚举类型 枚举类型也不能隐式转换为基础类型 示例: public enum Number { a, b, c, d
如何定义和使用枚举
枚举类型是一种的值类型,它用于声明一组命名的常数。 ( 1 ) 枚举的声明: 枚举声明用于声明新的枚举类型。 访问修辞符 enum 枚举名:基础类型
{ 枚举成员
} 基础类型必须能够表示该枚举中定义的所有枚举数值。枚举声明可以显式地声明 byte、 sbyte、short、ushort、int、uint、long 或 ulong 类型作为对应的基础类型。没有显式 地声明基础类型的枚举声明意味着所对应的基础类型是 int。
Evening
}பைடு நூலகம்
class Test
{
static void WriteGreeting(TimeofDay timeofDay)
{
switch(timeofDay)
{ case TimeofDay.Morning:
Console.WriteLine("good morning"); break; case TimeofDay.Afternoon: Console.WriteLine("good afternoon"); break; case TimeofDay.Evening: Console.WriteLine("good evening"); break; } } static void Main() { WriteGreeting(TimeofDay.Morning); WriteGreeting(TimeofDay.Evening); WriteGreeting(TimeofDay.Afternoon); }
}
class Test
{
public static void Main()
{
int i=Number.a;//错误,要强制类型转换(int)Number.a
Number n;
n=2
//错误,要强制类型转换(Number)2
}
}
(6)System.Enum 类型
System.Enum 类型是所有枚举类型的抽象基类,并且从 System.Enum 继承的成员在任
产生编译时错误,原因是常数值 -1、-2 和 –3 不在基础整型 uint 的范围内。 ( 3 ) 枚举成员默认 值 在枚举类型中声明的第一个枚举成员它的默值为零。 以后的枚举成员值是将前一个枚举成员(按照文本顺序)的值加 1 得到的。这样增加 后的值必须在该基础类型可表示的值的范围内;否则,会出现编译时错误。 示例: