最近在学习.net。遇到一个语句不知道其中的意思。请高手帮我解释下(主要是右边的语句)
BulletStyle bl = (BulletStyle)Enum.Parse(typeof(BulletStyle), strValue);
如果是将其转换为枚举类型的话,为什么还有获取它的类型。。。typeof(BulletStyle)
首先是Enum.Parse这个方法,它的作用是把一个值(第二个参数)转换为某个enum类型(第一个参数)的值,由于它的返回值是object,所以需要在前面再加一个(MyEnum)显式转换一下类型。这是2个步骤,彼此之间没有必然联系的。那么“为什么Enum.Parse要返回object而不是这个enum的类型呢”,这是由于Enum.Parse这个方法在C#1.0就存在了,而泛型是C#2.0才出现的。你现在可以用Enum.TryParse来获得无需再转换的enum返回值。
根据strValue在BulletStyle中找对应的值。一般StrValue是int类型。枚举默认继承自int类型
今天用上 学习了