zoukankan      html  css  js  c++  java
  • 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#中枚举类型的定义与使用

  • 相关阅读:
    Android5.0全透明状态栏效果
    从关系库导入数据到hive-hbase表中
    Find Minimum in Rotated Sorted Array II 旋转数组中找最小值(有反复元素) @LeetCode
    深度解析国内首个云原生数据库POLARDB的“王者荣耀”
    深度解析国内首个云原生数据库POLARDB的“王者荣耀”
    nodejs中httpserver的安装和使用
    Java的循环语句
    Java的循环语句
    Java的循环语句
    Mybatis-generator生成Service和Controller
  • 原文地址:https://www.cnblogs.com/net-sky/p/10219132.html
Copyright © 2011-2022 走看看