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#中枚舉類型的定義與使用


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM