本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《
阿里云开发者社区用户服务协议
》和
《
阿里云开发者社区知识产权保护指引
》。如果您发现本社区中有涉嫌抄袭的内容,填写
侵权投诉表单
进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
声明一个名为 Color 的枚举类型,该类型具有三个成员:Red、Green 和 Blue。
枚举具体是怎么声明呢?枚举声明用于声明新的枚举类型。枚举声明以关键字 enum 开始,然后定义该枚举类型的名称、可访问性、基础类型和成员。具体格式:
修饰词(new、public、protected、internal、private)enum 枚举类型名:整数类型
enum
-member-
declarations,
enum
-member-
declaration
请按任意键继续. . .
1.B.2, 一个枚举的关联值或隐式地、或显示地被赋值。如果枚举成员的声明中具有 constant-expression 初始值设定项,则该常量表达式的值(它隐式转换为枚举的基础类型)就是该枚举成员的关联值。如果枚举成员的声明不具有初始值设定项,则它的关联值按下面规则隐式地设置:
如果枚举成员是在枚举类型中声明的第一个枚举成员,则它的关联值为零。否则,枚举成员的关联值是通过将前一个枚举成员(按照文本顺序)的关联值加 1 得到的。这样增加后的值必须在该基础类型可表示的值范围内;否则,会出现编译时错误。有关枚举类型成员关联值赋值案例,参考下例:
public
enum
Day :
uint
//
如果不设置数据类型,默认为 int
{ Mon=
1
,Tue=
2
,Wed=
3
,Thu=
4
,Fri=
5
,Sat,Sun}
class
EnumType
public
static
void
Main(
string
[] args)
Console.WriteLine(ChooseDay(Day.Sun));
Console.WriteLine(ChooseDay(Day.Mon));
static
string
ChooseDay(Day d)
string
tmp =
string
.Empty;
switch
(d)
case
Day.Mon:
tmp
=
string
.Format(
"
你选择一周中的第{0}天(即周一),工作
"
,(
uint
)d);
break
;
case
Day.Tue:
tmp
=
string
.Format(
"
你选择一周中的第{0}天(即周二),工作
"
, (
uint
)d);
break
;
case
Day.Wed:
tmp
=
string
.Format(
"
你选择一周中的第{0}天(即周三),工作
"
, (
uint
)d);
break
;
case
Day.Thu:
tmp
=
string
.Format(
"
你选择一周中的第{0}天(即周四),工作
"
, (
uint
)d);
break
;
case
Day.Fri:
tmp
=
string
.Format(
"
你选择一周中的第{0}天(即周五),工作
"
, (
uint
)d);
break
;
case
Day.Sat:
tmp
=
string
.Format(
"
你选择一周中的第{0}天(即周六),休息
"
, (
uint
)d);
break
;
case
Day.Sun:
tmp
=
string
.Format(
"
你选择一周中的第{0}天(即周日),休息
"
, (
uint
)d);
break
;
default
:
tmp
=
"
不合法
"
;
break
;
return
tmp;