目录

  • 枚举的定义
  • 使用方式
  • 优点
  • 代码示例

枚举的定义

枚举是整数类型,用户自定义的整数类型的一个集合。

使用方式

public enum A
{a=0,b=1,c=2
}

注意:枚举定义的不同变量之间要用“,”分割,结尾不需要加上“,”

优点

  1. 可以使代码更易于维护
  2. 可以使代码更清晰
  3. 更易于输入与使用枚举值

代码示例

using  System;  2   3 class  Program  4 {  5     public   enum  Color  6    {  7       星期一  =   0xff0000 ,  8       星期二  =   0xFFA500 ,  9       星期三  =   0xFFFF00
14    }
15
16     static   void  Main( string [] args)
17    {
18       Week week  =  Week.星期一 ;
19        string  WeekDayString  =   " 星期一  " ;
20        int  WeekDay  =   0x0000FF ;
21
22        // 枚举转字符串
23        string  enumStringOne  =  week  .ToString(); //效率低,不推荐
24        string  enumStringTwo  =  Enum.GetName( typeof (Week), week);//推荐
25
26        // 枚举转值
27        int  enumValueOne  =  week  .GetHashCode();
28        int  enumValueTwo  =  ( int )week  ;
29        int  enumValueThree  =  Convert.ToInt32(week  );
30
31        // 字符串转枚举
32       Week  enumOne  =  (Week)Enum.Parse( typeof (Week), WeekString);
33
34        // 字符串转值
35        int  enumValueFour  =  ( int )Enum.Parse( typeof (Week), WeekString);
36
37        // 值转枚举
38       Week  enumTwo  =  (Week)weekValue;
39       Week  enumThree  =  (Week)Enum.ToObject( typeof (Week), weekValue);
40
41        // 值转字符串
42        string  enumStringThree  =  Enum.GetName( typeof (Week), weekValue);
43    }
44 }
45
46
47 // 假设有枚举值如下:
48
49 public   enum  DbProviderType
50
51   {
52
53       SqlServer,
54
55       Oracle
56
57   }
58 // 1、将枚举转换为字符串:
60 string  strDbType  =  DbProviderType.SqlServer.ToString();
61 // 2、将字符串转换为枚举:
62 DbProviderType dbType  =  (DbProviderType)Enum.Parse( typeof (DbProviderType), strDbType,  true );

C#枚举、值、字符串的相互转换相关推荐

  1. C# 声明枚举、枚举值描述 获取枚举值字符串 根据枚举获取枚举值描述

    一.声明枚举值.枚举值描述 using System.ComponentModel;public enum status {/// <summary>/// 取消/// </summ ...

  2. Unity枚举和字符串的相互转换

    直接上代码,见下图: public enum enumEx {A,B,C,D, } public class enumTest : MonoBehaviour { void Start () {str ...

  3. 如何从Java中的字符串值获取枚举值?

    说我有一个枚举 public enum Blah {A, B, C, D } 我想找到一个字符串的枚举值,例如"A"就是Blah.A 怎么可能做到这一点? Enum.valueOf ...

  4. 枚举值转换(字符串转换为枚举和整数转换为枚举)

    假设定义了一个这样的枚举类型: enum MyEnum { aa = 1, bb = 2 } 1.字符串转换为枚举: string strA = "aa"; MyEnum myEn ...

  5. 制作一个小工具:自动生成“将特定枚举值转换成字符串的C++函数”的代码

    需求 假设我有一种枚举类型: enum fruit_type {apple,banana,orange, }; 我时常会遇到需要将枚举值转换为字符串的情况,即我需要如下的函数: const char* ...

  6. mysql 改变枚举值_mysql 改变数据类型为枚举不成功?

    很明显的错误啊,你表里面内容有误,可以先将列gender的内容全部update成female和male,然后再运行这条sql脚本. 以下内容来源:MYSQL中 ENUM 类型 ENUM类型 ENUM ...

  7. mysql characterencoding 枚举值_mysql中enum类型理解,读完之后,大部分程序员收藏了......

    ENUM是枚举类型,它虽然只能保存一个值,却能够处理多达65535个预定义的值.下面是我写的一个mysql语句 CREATE TABLE student(id INT(11) PRIMARY key ...

  8. 扩展方法 枚举值_扩展枚举功能的两种方法

    扩展方法 枚举值 前言 在上一篇文章中,我解释了如何以及为什么在Java代码中使用enums而不是switch/case控制结构. 在这里,我将展示如何扩展现有enums功能. 介绍 Java enu ...

  9. jdk switch 枚举_JDK 12开关表达式遇到意外的枚举值

    jdk switch 枚举 正如我在" 玩JDK 12的Switch表达式 "一文中所写的那样, JDK 12 Early Access Build使JEP 325 [" ...

最新文章

  1. jquery ajax多次请求接口解决方案
  2. 数据库如何进行索引优化
  3. python简单笔记
  4. 我的游测之路 | 揭秘游戏测试神秘面纱(一)
  5. linux驱动头文件查找目录,在Fedora 20中查找简单设备驱动程序的头文件
  6. Flink】FLink 通讯组件 RPC
  7. ios 调用系统应用的方法 应用间跳转的方法
  8. 【报告分享】2020程序员人群洞察报告.pdf(附下载链接)
  9. JAVA的对象访问定位
  10. jquery 筛选不到 checkbox, radio 表单元素
  11. java自动排序_java中的自动排序集合 ---- 20160809
  12. 保持长宽比 对背景图像进行修改android:scaleType=fitXY
  13. Nginx PageSpeed模块配置和使用
  14. CSDN积分获取规则
  15. 怎么用html实现QQ代挂功能,QQ等级每天有几种加速方式
  16. Qt编写可视化大屏电子看板系统32-模块10大屏地图
  17. 数据库中的SCHEMA到底是什么?MySQL
  18. c语言字母大小写转换程序
  19. PHP的面向对象编程思想
  20. 【老生谈算法】matlab实现细菌觅食算法(BFA)源码——粒子群算法

热门文章

  1. 小兔伴伴家庭动物园AR智能早教产品上市
  2. 神经网络中的反向传播算法
  3. ogre plugin for 3dmax 最新进度和功能说明
  4. 关于Java抽象类,接口与实现接口及派生类继承基类
  5. 【记录一下】从0到1 我的python开发之路
  6. Spring AOP注解方式实现
  7. 第5章 IDA Pro
  8. Java反射机制的使用方法
  9. java String部分源码解析
  10. Hibernate之工具类HibernateUtil