.NET中的枚举用法浅析
程序员文章站
2024-02-22 10:47:46
本文简单分析了.net中的枚举用法。分享给大家供大家参考。具体分析如下:
我理解的枚举就是编程中约定的一个“可选值”;例如qq的在线状态,分别有 &...
本文简单分析了.net中的枚举用法。分享给大家供大家参考。具体分析如下:
我理解的枚举就是编程中约定的一个“可选值”;例如qq的在线状态,分别有 在线,q我吧,隐身,忙碌等等。。。我觉得这就是一个枚举。
1.普通枚举
1) 实例
复制代码 代码如下:
public enum userstate
{
qme,
online,
offline //后面省略
}
{
qme,
online,
offline //后面省略
}
ps:像上边的枚举,可以单独写在一个cs文件中。
2)普通枚举的性质
1. 互斥性
2. 每一个值都有一个数值来表示
3. 枚举在编译时,就已经用数值来表示了。
3)字符串转换成枚举
复制代码 代码如下:
(userstate)enum.parse(typeof(userstate),"red") ;
4)枚举转换成数值、字符串
复制代码 代码如下:
(int)mycolor.red;
mycolor.red.tostring();
mycolor.red.tostring();
2.标识枚举
但一个事物具有多个属性时,普通枚举就不够用了。
普通枚举是互斥的,标识而枚举是可以组合的。
1)定义
复制代码 代码如下:
//使用以后结果是tostring()的,而不是数字的。
public enum goodman
{
高=1,
富=2,
帅=4 //这里必须是2的n次方,切不能重复。
}
2)状态组合(或运算)
复制代码 代码如下:
goodman winter = goodman.高| goodman.富| goodman.帅;
3)判定winter中是否具有某个枚举值(与运算)
复制代码 代码如下:
if(winter&goodman.高==goodman.高)
希望本文所述对大家的.net程序设计有所帮助。