using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication2
{
enum Day //枚举类型
{
Sunday,
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday
}
class Program
{
static void Main(string[] args)
{
Day MyDay ;
int pass = Convert.ToInt16(Console.ReadLine());
switch (pass) //switch语句,等于delphi中的case语句
{
case (int)(Day.Sunday):
MyDay = Day.Sunday;
Console.WriteLine("今天是星期天,还可以睡个懒觉. {0}",MyDay);
break;
case (int)Day.Monday :
MyDay = Day.Monday;
Console.WriteLine("今天该上班咯,新的一星期开始了!! {0}",MyDay);
break;
case (int)Day.Tuesday :
MyDay = Day.Tuesday;
Console.WriteLine("本周的第二个工作日. {0}",MyDay);
break;
case (int)Day.Wednesday :
MyDay = Day.Wednesday;
Console.WriteLine("本周的第三个工作日 {0}", MyDay);
break;
case (int)Day.Thursday :
MyDay = Day.Thursday;
Console.WriteLine("本周的第四个工作日 {0}",MyDay);
break;
case (int)Day.Friday :
MyDay = Day.Friday;
Console.WriteLine("本周的最后一个工作日, 把工作都完成明天你就可以睡懒觉了.! 加油 {0}",MyDay);
break;
case (int)Day.Saturday:
MyDay = Day.Saturday;
Console.WriteLine("今天是星期六,想好去哪玩了吗? {0}",MyDay);
break;
default :
Console.WriteLine("你输入了错误的信息");
break;
}
}
}
}
// 枚举类型虽然表面上看着是一个字符串,但是实际上它在内存中存储的整形数值.
// 所以枚举类型是可以用数学运算符进行运算的, 比如. MyDay++;
甚至是可以做异或运算,与运算等. 不过需要先将其转换为整型. 比如. Console.WriteLine(Convert.Toint32(MyDay)^1);
但是有一点要记住, 做数学运算的时候,如果计算的范围超过了枚举范围,那么这个枚举类型变量将会变成一个数字.
假如 Day = Saturday,这个时候再进行 Day++运算的话,那么Day会返回一个数字, 在这里返回的数字是7