您的位置:首页 > 移动开发 > Objective-C

枚举应用

2011-08-05 15:41 106 查看
 
/*遍历枚举*/

//把枚举数据形成一个键值对的集合

 public static Dictionary<string, int>   GetDic()

        {

            Dictionary<string, int>  dic=new Dictionary<string,int>();

             dic.Clear();

            Array arr = Enum.GetValues(typeof(ENU_Test));

            foreach (int i in arr)

            {

                stirng key = Enums.Text((ENU_Test)i);//获取没有类型描述

                dic.Add(key, i);

            }

            return dic;

        }

 /*定义枚举*/

    public enum  ENU_Test: int

    {

        [Description("")]  /枚举描述

        a= 0,

       

      [Description("")]

        b= 1

    }

 

    /// 获取枚举描述,通过反射

    public static class Enums

    {

        public static string GetDesc(Enum enumSubitem)

        {

            string strValue = enumSubitem.ToString();

            FieldInfo fieldinfo = enumSubitem.GetType().GetField(strValue);

            Object[] objs = fieldinfo.GetCustomAttributes(typeof(DescriptionAttribute), false);

            if (objs == null || objs.Length == 0)

            {

                return strValue;

            }

            else

            {

                DescriptionAttribute da = (DescriptionAttribute)objs[0];

                return da.Description;

            }

        }

    }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  enums string object class null