c#中枚举类型的定义与使用

Posted Twang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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");

 

转:an-wl  c#中枚举类型的定义与使用

以上是关于c#中枚举类型的定义与使用的主要内容,如果未能解决你的问题,请参考以下文章

C#图解教程 第十一章 枚举

C#如何将枚举类(enum)型转换成字符(string)类型

C#知识点 枚举

C# 枚举器和可枚举类型

C#里面的枚举与位或运算符 一个枚举变量存入多个值

C#如何将枚举类(enum)型转换成字符(string)类型