深入解析c#中枚举类型的定义与使用

 更新时间:2013年08月31日 10:57:24   作者:  
以下是对c#中枚举类型的定义与使用进行了详细的分析介绍,需要的朋友可以过来参考下

介绍
枚举是一个指定的常数,其基础类型可以是除 Char 外的任何整型。
如果没有显式声明基础类型,则使用 Int32。
编程语言通常提供语法来声明由一组已命名的常数和它们的值组成的枚举。

定义
默认基数从O开始,也可指定数值。
enum Days { Saturday=1, Sunday, Monday, Tuesday, Wednesday, Thursday, Friday };
enum Colors { Red = 1, Green = 2, Blue = 4, Yellow = 8 };

使用
Colors myColors = Colors.Red;
string strColor=myColors.tostring();
int    IntColor=(int)myColors ;

位或
Colors myColors = Colors.Red | Colors.Blue | Colors.Yellow;

位与
Colors myColors = Colors.Red & Colors.Blue & Colors.Yellow;

遍历

复制代码 代码如下:

foreach (string s in Enum.GetNames(typeof(Days)))
Response.Write(s + "--" + Enum.Parse(typeof(Days), s).ToString());

转换
复制代码 代码如下:

Colors mc=Colors Enum.Parse(typeof(Colors ), "red");
if (System.Enum.IsDefined(typeof(Days), "Monday"))
Days ds= (Days)Enum.Parse(typeof(Days), "Monday");

实例二:
复制代码 代码如下:

    public enum NoticeType
    {
        Notice = 'A',
        LabRule = 'H',
        HotInformation = 'N',
        Column = 'C',
        All = '1',
        Null = '0'
     }
     //新建枚举类型
        NoticeType noticeType1 = NoticeType.Column;

        //把枚举类型转换为string d="Column"
        string d = noticeType1.ToString();

        //取得枚举类型的基数 dd='C'
        char dd = (char)noticeType1;

        //通过基数取得对应的枚举类型 noticeType2 = NoticeType.Notice
        //(NoticeType)'A';  两种方式都可以
        NoticeType noticeType2 = (NoticeType)Char.Parse("A");

    //通过名称取得枚举类型 noticeType3 = NoticeType.Notice
        NoticeType noticeType3 = (NoticeType)Enum.Parse(typeof(NoticeType), "Notice");

相关文章

  • C#读写config配置文件的方法

    C#读写config配置文件的方法

    下面小编就为大家带来一篇C#读写config配置文件的方法。小编觉的挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • DevExpress实现TreeList父子节点CheckState状态同步的方法

    DevExpress实现TreeList父子节点CheckState状态同步的方法

    这篇文章主要介绍了DevExpress实现TreeList父子节点CheckState状态同步的方法,需要的朋友可以参考下
    2014-08-08
  • C#简单读写txt文件的方法

    C#简单读写txt文件的方法

    这篇文章主要介绍了C#简单读写txt文件的方法,涉及C#针对文件的基本打开、写入、保存与读取等操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2016-06-06
  • C#中对称加密算法的踩坑日常记录

    C#中对称加密算法的踩坑日常记录

    这篇文章主要给大家介绍了关于C#中对称加密算法的踩坑日常记录,文中通过示例代码介绍的非常详细,对大家学习或者使用C#具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-06-06
  • C#实现把彩色图片灰度化代码分享

    C#实现把彩色图片灰度化代码分享

    这篇文章主要介绍了C#实现把彩色图片灰度化代码分享,用在一些特殊场合中,需要的朋友可以参考下
    2014-08-08
  • C#实现由四周向中心缩小的窗体退出特效

    C#实现由四周向中心缩小的窗体退出特效

    这篇文章主要介绍了C#实现由四周向中心缩小的窗体退出特效,通过简单的C#窗口调用参数设置实现该退出特效功能,非常简单实用,需要的朋友可以参考下
    2015-08-08
  • 基于C#实现的敏感字检测示例

    基于C#实现的敏感字检测示例

    这篇文章主要介绍了基于C#实现的敏感字检测示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-09-09
  • unity实现流光效果

    unity实现流光效果

    这篇文章主要为大家详细介绍了unity实现流光效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-04-04
  • C#数字图象处理之图像灰度化方法

    C#数字图象处理之图像灰度化方法

    这篇文章主要介绍了C#数字图象处理之图像灰度化方法,涉及C#基于Bitmap类操作图像的相关技巧,需要的朋友可以参考下
    2015-04-04
  • 带着问题读CLR via C#(笔记一)CLR的执行模型

    带着问题读CLR via C#(笔记一)CLR的执行模型

    CLR (Common Language Runtime) 是一个可以由多种编程语言使用的“运行时”。
    2013-04-04

最新评论