有没有办法迭代枚举类型中的元素?类似的东西:
public enum MyEnum
{
One,
Two,
Three,
}
foreach(var temp in MyEnum)
{
//Do something
}
我可以通过反思或其他方式来实现吗?
答案 0 :(得分:3)
使用System.Array Enum.GetValues(Type)方法。
foreach(var temp in Enum.GetValues(typeof(MyEnum)))
{
//code
}
答案 1 :(得分:2)
使用Enum.GetValues(typeof(MyEnum))
:
foreach(MyEnum temp in Enum.GetValues(typeof(MyEnum)))
{
//Do something
}
请注意:我使用MyEnum temp
代替var temp
,因为GetValues
未返回强类型数组。
答案 2 :(得分:0)
foreach (var name in Enum.GetNames(typeof(MyEnum))
答案 3 :(得分:0)
var test = Enum.GetValues(typeof(MyEnum));
foreach (MyEnum e in test)
{
Console.Write(e);
}