C# 定义了一个枚举,枚举里面的项都有自己的编号,怎样通过编号获得这个枚举的字符串?
enumArea{北京市=11,天津市=12,河北省=13,山西省=14,内蒙古自治区=15,辽宁省=21,吉林省=22,黑龙江省=23,上海市=32,江苏省=33,浙江...
enum Area
{
北京市 = 11, 天津市 = 12, 河北省 = 13, 山西省 = 14, 内蒙古自治区 = 15,
辽宁省 = 21, 吉林省 = 22, 黑龙江省 = 23, 上海市 = 32, 江苏省 = 33, 浙江省 = 33,
安徽省 = 34, 福建省 = 35, 江西省 = 37, 山东省 = 41, 湖北省 = 42,
湖南省 = 43, 广东省 = 44, 广西壮族自治区 = 45, 重庆市 = 50, 四川省 = 51,
贵州省 = 52, 云南省 = 53, 西藏自治区 = 54, 陕西省 = 61, 甘肃省 = 62,
青海省 = 63, 宁夏回放自治区 = 64, 新疆维吾尔自治区 = 65, 台湾省 = 71,
香港特别行政区 = 81, 澳门特别行政区 = 82
}
static string checkArea(string areaID)
{
string[] str = Enum.GetNames(typeof(Area));
Array num = Enum.GetValues(typeof(Area));
foreach(int i in num)
{
if (i.ToString() == areaID)
{
return str[i];
}
}
return null;
}
我写的这个方法,提示说越界,也就是str这个集合里面,是从0开始按顺序排序的。我想不到什么方法,比如int n =35,然后对应到“福建省” 展开
{
北京市 = 11, 天津市 = 12, 河北省 = 13, 山西省 = 14, 内蒙古自治区 = 15,
辽宁省 = 21, 吉林省 = 22, 黑龙江省 = 23, 上海市 = 32, 江苏省 = 33, 浙江省 = 33,
安徽省 = 34, 福建省 = 35, 江西省 = 37, 山东省 = 41, 湖北省 = 42,
湖南省 = 43, 广东省 = 44, 广西壮族自治区 = 45, 重庆市 = 50, 四川省 = 51,
贵州省 = 52, 云南省 = 53, 西藏自治区 = 54, 陕西省 = 61, 甘肃省 = 62,
青海省 = 63, 宁夏回放自治区 = 64, 新疆维吾尔自治区 = 65, 台湾省 = 71,
香港特别行政区 = 81, 澳门特别行政区 = 82
}
static string checkArea(string areaID)
{
string[] str = Enum.GetNames(typeof(Area));
Array num = Enum.GetValues(typeof(Area));
foreach(int i in num)
{
if (i.ToString() == areaID)
{
return str[i];
}
}
return null;
}
我写的这个方法,提示说越界,也就是str这个集合里面,是从0开始按顺序排序的。我想不到什么方法,比如int n =35,然后对应到“福建省” 展开
1个回答
展开全部
这个可以的。敬模看我代码:
Area d2 = (Area)Enum.Parse(typeof(Area), "35", true);
这样取得的就是“福建省”
建议:
其实像你亮简缓这样的数据可以试试Dictionary<string,int>来存咐闹储。
Area d2 = (Area)Enum.Parse(typeof(Area), "35", true);
这样取得的就是“福建省”
建议:
其实像你亮简缓这样的数据可以试试Dictionary<string,int>来存咐闹储。
追问
Dictionary这个具体怎么用?从来没用过。
追答
你看看怎么用,这个数据结构也能实现
Dictionary myDictionary=new Dictionary();
myDictionary.Add("BJ市",11);
myDictionary.Add("TJ市",12);
其余的自己添加进去
foreach(var data in myDictionary)
{
if (var.Key==35)
{
Console.WriteLine(var.Value);
}
}
百度不让输入“XX市”,你懂得
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询