📅  最后修改于: 2023-12-03 15:21:57.401000             🧑  作者: Mango
在C#中,枚举是一种在编程过程中定义常量的数据类型。在某些情况下,您可能需要从字符串或整数中获取枚举值。在本文中,我们将讨论如何在C#中轻松地获取枚举值。
在C#中,您可以使用Enum.Parse()方法根据字符串值获取枚举值。此方法的语法如下:
public static object Parse(Type enumType, string value)
以下是使用Enum.Parse()方法从字符串值获取枚举值的示例:
public enum DaysOfWeek
{
Sunday,
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday
}
string dayOfWeek = "Monday";
DaysOfWeek enumValue = (DaysOfWeek)Enum.Parse(typeof(DaysOfWeek), dayOfWeek);
Console.WriteLine("Enum value from string: {0}", enumValue.ToString()); // 输出:Enum value from string: Monday
在上面的示例中,我们定义了一个名为DaysOfWeek的枚举,并使用Enum.Parse()方法从名称为“Monday”的字符串中获取枚举值。我们将获取的值强制转换为DaysOfWeek类型,并使用ToString()方法打印出来。
您也可以使用Enum.Parse()方法从整数值获取枚举值。此方法的语法如下:
public static object ToObject(Type enumType, object value)
以下是使用Enum.ToObject()方法从整数值获取枚举值的示例:
public enum Weekends
{
Saturday = 1,
Sunday = 2
}
int enumValueInt = 2;
Weekends enumValue = (Weekends)Enum.ToObject(typeof(Weekends), enumValueInt);
Console.WriteLine("Enum value from integer: {0}", enumValue.ToString()); // 输出:Enum value from integer: Sunday
在上面的示例中,我们定义了一个名为Weekends的枚举,并使用Enum.ToObject()方法从值为2的整数中获取枚举值。我们将获取的值强制转换为Weekends类型,并使用ToString()方法打印出来。
在C#中,您可以使用Enum.Parse()或Enum.ToObject()方法从字符串或整数中获取枚举值。这两种方法对于处理用户输入以获取枚举值等情况非常有用。