📜  循环遍历枚举 c# (1)

📅  最后修改于: 2023-12-03 15:25:37.649000             🧑  作者: Mango

循环遍历枚举

在 C# 中,枚举类型是一种常用的数据类型,它允许我们定义一组常量。使用枚举可以使代码更容易理解和管理。在编写代码时,我们常常需要遍历枚举中的所有值,这时就需要使用循环遍历枚举。本文将介绍 C# 中循环遍历枚举的几种方法。

方法一:foreach 循环

使用 foreach 循环可以遍历枚举中的所有值。代码如下:

// 定义一个枚举类型
enum Colors { Red, Green, Blue };

// 遍历枚举中的所有值
foreach (Colors color in Enum.GetValues(typeof(Colors)))
{
    Console.WriteLine(color);
}

输出结果为:

Red
Green
Blue
方法二:for 循环

使用 for 循环可以遍历枚举中的所有值。代码如下:

// 定义一个枚举类型
enum Colors { Red, Green, Blue };

// 遍历枚举中的所有值
for (int i = 0; i < Enum.GetValues(typeof(Colors)).Length; i++)
{
    Console.WriteLine((Colors)i);
}

输出结果与方法一相同。

方法三:while 循环

使用 while 循环可以遍历枚举中的所有值。代码如下:

// 定义一个枚举类型
enum Colors { Red, Green, Blue };

// 遍历枚举中的所有值
int j = 0;
while (Enum.GetValues(typeof(Colors)).GetValue(j) != null)
{
    Console.WriteLine((Colors)Enum.GetValues(typeof(Colors)).GetValue(j));
    j++;
}

输出结果与方法一和方法二相同。

方法四:do-while 循环

使用 do-while 循环可以遍历枚举中的所有值。代码如下:

// 定义一个枚举类型
enum Colors { Red, Green, Blue };

// 遍历枚举中的所有值
int k = 0;
do
{
    Console.WriteLine((Colors)Enum.GetValues(typeof(Colors)).GetValue(k));
    k++;
}
while (Enum.GetValues(typeof(Colors)).GetValue(k) != null);

输出结果与方法一、方法二和方法三相同。

以上是 C# 中循环遍历枚举的几种方法,我们可以根据实际需求选择合适的方法。