0

可能重复:
如何枚举枚举?

假设有一个枚举

public enum Numbers {one, two, three };

为了获得输出“一”、“二”、“三”,我必须写什么而不是下面代码中的三个点:

foreach (Numbers n in ...) {
   Console.WriteLine (n.ToString ());
}

当然,我希望修改枚举定义不需要修改 foreach () 中的代码。

4

4 回答 4

5

你可以使用:

foreach (Numbers n in Enum.GetValues(typeof(Numbers))) 
{
    Console.WriteLine(n.ToString());
}
于 2012-07-21T09:19:53.220 回答
3

如果您只需要获取名称,则可以使用:

foreach (string name in Enum.GetNames(typeof(Numbers)))
{
    Console.WriteLine(name);
}

当然,如果您想实际使用 Enum 值,其他人已经指出。

于 2012-07-21T09:20:56.217 回答
0

用这个:Enum.GetValues(type)

于 2012-07-21T09:20:43.700 回答
0

考虑以下:

        foreach (var n in Enum.GetValues(typeof(Numbers)))
        {
            Console.WriteLine(n.ToString());
        }
于 2012-07-21T09:25:36.780 回答