枚举值

从学习C#接触到的枚举值,一直不太明白这到底是个什么东西。这不在.NET中又看到了它,接下来来总结一下。

【概述】

从字面理解枚举的意思是一一列出。在计算机语言中,枚举就相当于把变量的值一一列出,这变量只能是有限可能取值的变量。比如性别只有男和女,星期只有周一到周日七个。对这种有有限可能取值的变量,我们可以把它定义为枚举类型。

【定义方法】

定义一个枚举类型的变量,用enum定义。可以先定义一个枚举类型名,然后再说明这个变量是该枚举类型。

enum weekday{sun,mon,tue,wed,thu,fri,sat};
enum weekday day;

或者可以直接定义枚举类型变量。

enum weekday{sun,mon,tue,wed,thu,fri,sat}day;

【注意】

⑴枚举元素不是变量!是常数!因此枚举元素又称枚举常量。因为是常量,所以不能被赋值

⑵枚举元素作为常量是有值的。C#语言在编译时,默认按定义的顺序使它们的值为0,1,2,3...。                                                 如上:sun值为0,mon值为1...且这个值可以输出。

 如果在定义枚举类型时指定元素的值,也可以改变枚举元素的值。之后的元素顺次加1。

enum weekday{sun=7,mon,tue,wed,thu,fri,sat}day; 

 这时,sun为7,mon为8...

⑶枚举值可用作判断。如:

if(day==mon){...}
if(day>mon){...}
⑷一个整数不能直接赋值给一个枚举变量,必须强制进行类型转换才能赋值。如:
day=(enum weekday)2;
 这个赋值的意思是将顺序号为2的枚举元素赋给day,相当于weekday=tue;

【好处】

⑴直观,值可控。(给你一个门,你规定好让哪些人进)

⑵使代码简单易懂。(让空空的那些数字有了名字)

⑶规范参数形式。(像一个类,也想数组)


其中有一些个人观点,有不准确的地方,还望指正!


评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值