c#中枚举类型的定义与使用
介绍
枚举是一个指定的常数,其基础类型可以是除Char 外的任何整型。
如果没有显式声明基础类型,则使用Int32。
编程语言通常提供语法来声明由一组已命名的常数和它们的值组成的枚举。
定义
默认基数从O开始,也可指定数值。
enum Days { Saturday =1, Sunday, Monday, Tuesday, Wednesday, Thursday, Friday } ;
enumColors { Red = 1, Green = 2, Blue = 4, Yellow = 8 } ;
使用
ColorsmyColors = Colors.Red;
string strColor =myColors.tostring();
int IntColor =(int)myColors ;
位或
ColorsmyColors = Colors.Red | Colors.Blue | Colors.Yellow;
位与
ColorsmyColors = Colors.Red & Colors.Blue & Colors.Yellow;
遍历
foreach ( string s in Enum.GetNames( typeof(Days)))
Response.Write(s + "--" + Enum.Parse( typeof(Days), s).ToString());
转换
Colorsmc =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");
枚举是一个指定的常数,其基础类型可以是除
如果没有显式声明基础类型,则使用
编程语言通常提供语法来声明由一组已命名的常数和它们的值组成的枚举。
定义
默认基数从O开始,也可指定数值。
enum
使用
Colors
int
位或
Colors
位与
Colors
遍历
转换
Colors
实例二: