您的位置:首页 > 其它

枚举的一些常用操作

2014-07-28 09:39 267 查看
本章将介绍以下几点:   

   1、如何把其它类型转换为枚举类型?

   2、如何把枚举中的值添加到下拉菜单中?

 

一、如何把其它类型转换为枚举类型?

       我们回顾一下有关字符串与数字之间的转换,如:

       string strValue="12";

       int value=int.Parse(strValue);    //使用int.Parse()就可以把字符串转换为整数

    

      那把字符串转换成枚举类型相对于要复一些,语法如下:

      Enum.Parse(枚举的类型,要转换的值);

      实际应用:

      现在有一个枚举


 现有一个字符串:string strValue="QQ2001";
使用枚举转换语句:Enum.Parse(枚举的类型,要转换的值);
  Enum.Parse(typeof(QQSkipEnum) , strValue);
  以上的结果是一个object类型,所以还需要强转一下,
 
  使用该枚举来接收,如下:
QQSkipEnum  qprase=
(QQSkipEnum)Enum.Parse(typeof(QQSkipEnum) , strValue);
这样就把字符串转换成枚举类型成功,以上的代码相对于复杂一点,
但在实际的开发过程当中,是必不可少的,所以务必要记住
 
 注意:在把字符串转换为枚举过程中,该字符串必须在枚举中是存在此值的,如果该值不存在,
         系统就会提示错误
 
 如:
string strValue="qq2001";       
转换的时候:
QQSkipEnum  qprase=
(QQSkipEnum)Enum.Parse(typeof(QQSkipEnum) , strValue);
这样是不行的,因为在枚举中没有
"qq2001"的定义,只有大写的“QQ2001”
 

二、如何把枚举中的值添加到下拉菜单中

    因为枚举是一组固定的常量,所以可以使用枚举中的自带方法,把这些常量转换为字符串数组,

  然后再添加到下拉菜单中。

   语法如下:

   string[]   qqSkip= Enum.GetNames(枚举类型);    //该方法返回的是字符串数组

  

  以下是效果图:

   


 

  如果还不太明白,可以去MSDN:

  http://msdn.microsoft.com/zh-cn/library/sbbt4032(VS.80).aspx

 

  以下是Enum成员,请大家了解一下:

  http://msdn.microsoft.com/zh-cn/library/system.enum_members(VS.80).aspx

 

  总结:枚举在我们实际项目开发中,非常的重要,枚举转换和如何得到枚举的值,

          这些方法大家必须要记下来,学程序的最好的方法就是,练,练,练,再练。

           祝大家学习快乐!

本章讲解如下枚举的如下几个知识点:

   1、什么是枚举?

   2、枚举是值类型还是引用类型?

   3、如何定义枚举?

   4、枚举的好处?

   5、枚举在实际系统开发过程中的用处?

 

   一、什么是枚举

           枚举:用来存放一组固定的常量

                  它是用来解决用户进行多次if
/switch重复简单的判断

  

  二、枚举是值类型还是引用类型?

      枚举是值类型

 

  三、如何定义枚举?

     
定义枚举的语法非常简单,如下:

      


枚举的语法
    要记得枚举的关键字是 enum
 
  四、枚举的好处?
    1、便于用户回忆以前的资料

    2、便于少输入代码,使程序更容易编写和维护。
    3、防止用户乱输入
 
 五、枚举在实际系统开发过程中的用处?
    我举一个仿QQ换肤的简单方法来做一个试验,代码如下,请分析结果会是什么?
     


   我们来看一看,这样的代码确实有点不能让人接受,原因:
      1、结果错误,通过客户端传入一个字符串来进行判断,容易出错
      2、使用了多个if.. else if ..else if....语句块,
          基本上是在做同一件判断的事情
      3、如果这个程序拿给一个新手来做,那这个新员工来进行开发,那这个员工的记忆力要非常的好,
         不然一个字符输出就有可能得不到想要的结果.....
 
   那如何解决这种多次使用if/switch等简单语句判断呢?这时候枚举就出马了,代码如下:
 



 
在用户调用的时候,系统会有提示,如图:



 
使用枚举的好处,再次强调:
    1、便于用户回忆以前的资料
    2、便于少输入代码,使程序更容易编写和维护。
    3、防止用户乱输入
 
那如何把字符串转换为枚举类型?
如何把枚举添加到下拉菜单中?
这两个问题,在下一章将会进行讲解.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: