我有一个看起来像这样的枚举:
public enum Month
{
January, February, March,
April, May, June, July, August,
Septemper, October, November, December
};
我真正需要做的是询问并从用户那里读取一个数字,就像这样:
Console.WriteLine("Enter the number of the
month")
int monthValue=int.parse(Console.ReadLine())
最后,我想获取monthValue并打印等效的Enum。 (例如,4月表示月份值4)
答案 0 :(得分:1)
您可以简单地将值转换为枚举。不要忘记设置一月的初始值,或者考虑默认情况下枚举从0开始;
控制台应用程序将是下一个:
class Program
{
public enum Month
{
January, February, March,
April, May, June, July, August,
Septemper, October, November, December
};
static void Main(string[] args)
{
Console.WriteLine("Enter the number of the month");
int monthValue = 0;
int.TryParse(Console.ReadLine(), out monthValue);
Console.WriteLine((Month)monthValue - 1);
Console.ReadKey();
}
}
如果您不需要临时变量,也可以将其真正转换为枚举。但不要忘记设置默认的枚举值
public enum Month
{
January = 1, February, March,
April, May, June, July, August,
Septemper, October, November, December
};
static void Main(string[] args)
{
Console.WriteLine("Enter the number of the month");
var input = Enum.Parse(typeof(Month), Console.ReadLine());
Console.WriteLine(input);
Console.ReadKey();
}
答案 1 :(得分:1)
以下代码将月份的名称打印到控制台。为此,它使用静态的Enum.GetName()方法。
string monthName = Enum.GetName(typeof(Month), monthValue - 1);
Console.WriteLine(monthName);