首页 > 编程知识 正文

枚举值转换成字符串,枚举值超出合法范围

时间:2023-05-05 16:03:14 阅读:272458 作者:4204

从学习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;

【好处】

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

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

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


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


版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。