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
相关文章: