首页 新闻 会员 周边

请问一个语句的意思

0
悬赏园豆:10 [已解决问题] 解决于 2013-07-30 12:12

最近在学习.net。遇到一个语句不知道其中的意思。请高手帮我解释下(主要是右边的语句)

BulletStyle bl = (BulletStyle)Enum.Parse(typeof(BulletStyle), strValue);

如果是将其转换为枚举类型的话,为什么还有获取它的类型。。。typeof(BulletStyle)

回望未来的主页 回望未来 | 初学一级 | 园豆:4
提问于:2013-04-06 10:15
< >
分享
最佳答案
0

首先是Enum.Parse这个方法,它的作用是把一个值(第二个参数)转换为某个enum类型(第一个参数)的值,由于它的返回值是object,所以需要在前面再加一个(MyEnum)显式转换一下类型。这是2个步骤,彼此之间没有必然联系的。那么“为什么Enum.Parse要返回object而不是这个enum的类型呢”,这是由于Enum.Parse这个方法在C#1.0就存在了,而泛型是C#2.0才出现的。你现在可以用Enum.TryParse来获得无需再转换的enum返回值。

收获园豆:5
水牛刀刀 | 大侠五级 |园豆:6350 | 2013-04-07 09:56
其他回答(3)
0

根据strValue在BulletStyle中找对应的值。一般StrValue是int类型。枚举默认继承自int类型

滴答的雨 | 园豆:3660 (老鸟四级) | 2013-04-06 12:22
0
收获园豆:5
chenping2008 | 园豆:9836 (大侠五级) | 2013-04-06 20:34
0

今天用上 学习了

Yu | 园豆:12980 (专家六级) | 2013-04-07 11:47
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册