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

摘要:
使用系统;classProgram{publicenumColor{红色=0xff0000,橙色=0xFFA500,黄色=0xFFFF00,青绿色=0x00FF00,青色=0x00FFFF,蓝色=0x0000FF,紫色=0x800080}staticvoidMain(string〔〕args){Colorcolor=Color.Blue;字符串
using  System;

class  Program
{
    public   enum  Color
   {
      Red  =   0xff0000 ,
      Orange  =   0xFFA500 ,
      Yellow  =   0xFFFF00 ,
      Lime  =   0x00FF00 ,
      Cyan  =   0x00FFFF ,
      Blue  =   0x0000FF ,
      Purple  =   0x800080 
   }

    static   void  Main( string [] args)
   {
      Color color  =  Color.Blue;
       string  colorString  =   " Blue " ;
       int  colorValue  =   0x0000FF ;

       // 枚举转字符串 
       string  enumStringOne  =  color.ToString(); //效率低,不推荐
       string  enumStringTwo  =  Enum.GetName( typeof (Color), color);//推荐

       // 枚举转值 
       int  enumValueOne  =  color.GetHashCode();
       int  enumValueTwo  =  ( int )color;
       int  enumValueThree  =  Convert.ToInt32(color);

       // 字符串转枚举 
      Color enumOne  =  (Color)Enum.Parse( typeof (Color), colorString);

       // 字符串转值 
       int  enumValueFour  =  ( int )Enum.Parse( typeof (Color), colorString);

       // 值转枚举 
      Color enumTwo  =  (Color)colorValue;
      Color enumThree  =  (Color)Enum.ToObject( typeof (Color), colorValue);

       // 值转字符串 
       string  enumStringThree  =  Enum.GetName( typeof (Color), colorValue);
   }
}
// 假设有枚举值如下: 

public   enum  DbProviderType

  {

      SqlServer,

      Oracle

  }
// 1、将枚举转换为字符串: 

string  strDbType  =  DbProviderType.SqlServer.ToString();
// 2、将字符串转换为枚举: 

DbProviderType dbType  =  (DbProviderType)Enum.Parse( typeof (DbProviderType), strDbType,  true );

免责声明:文章转载自《C# 枚举、字符串、值的相互转换》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇ASP.NET Core2.1 你不得不了解的GDPR(Cookie处理)idea导入jquery无法生效问题jQuery is not defined下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

LinqHelper拓展

public static class LinqHelper { //NHibernate.Hql.Ast.HqlBooleanExpression public static Expression<Func<T, bool>> True<T>() {...

C#枚举(一)使用总结以及扩展类分享

0.介绍 枚举是一组命名常量,其基础类型为任意整型。 如果没有显式声明基础类型, 则为Int32 在实际开发过程中,枚举的使用可以让代码更加清晰且优雅。 最近在对枚举的使用进行了一些总结与整理,也发现了一些很有意思的知识盲区。 接下来先简单为大家介绍枚举在开发过程中的常用内容以及扩展类的分享。如果喜欢直接看代码的可以查看最后的样例源码。 1. 参考资料 官...

AS3中 is,as,typeof的区别

  var my_num:Number=9;trace(typeof my_num);var my_object:Array=["语文","数学","英语"];trace(my_object is Array);trace(my_object as Array)//typeof 是用字符串形式返回对象的类型.//is 用于判断一个对象是否属于一种类型.//...

《JavaScript 高级程序设计》总结

一、JS基本概念 1、命名规则 变量名区分大小写(test和Test是两个不同的变量名),标识符采用驼峰命名格式,即:第一个字母小写,剩下的每个有意义的单词首字母大写; 标识符第一个字符必须是以字母、_ 、$开始; 标识符及变量名不能与关键字保留字一样; 其他字符可以是数字、字母、下划线、或$。 2、注释 //单行注释 /**/多行注释 3、...

XNA游戏开发之(六)——保存游戏数据

[原创]Alex 游戏过程中,通常需要存储游戏状态。在下次启动游戏时,重新载入游戏,继续游戏。 实现过程非常简单,首先建立一个结构体定义需要保存的游戏参数,然后通过XmlSerializer类将其保存为一个XML文档。 1interfaceGameData2{3intGameID;4stringPlayName;5DateTimeTime;6} XNA...

C#中的typeof()和GetType()的区别

说明:这里只列举了一部分,还有待继续添加: 1、typeof(x)中的x,必须是具体的类名、类型名称等,不可以是变量名称。 2、GetType()方法继承于Object(C#中所有类的基类都是object类。基类是相对于派生类而言的,比方说:如果B类继承自A类,则A就是B的基类。), 所以C#中任何对象都具有GetType()方法,它的作用和typeof(...