为了账号安全,请及时绑定邮箱和手机立即绑定

C#中枚举判定无效

C#中枚举判定无效

C#
慕仰4342967 2016-10-31 18:05:42
using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication2{    enum Weekday    {        Sunday,        Monday,        Tuesday,        Wednesday,        Thursday,        Friday,        Saturday    }    class Program    {        static void Main(string[] args)        {            //Weekday w1 = 0;            int m=1;             //m = Console.Read();            switch (m)            {                case 0: Console.WriteLine(Weekday.Sunday);                    break;                case 1: Console.WriteLine(Weekday.Monday);                    break;                                }                    }    }}
查看完整描述

2 回答

?
Besthope

TA贡献3条经验 获得超0个赞

这位仁兄,建议你不要使用Console.ReadLine()这个方法组,其值为string,不能直接和您那枚举类型直接进行逻辑运算。

建议你干脆不要使用ReadLine()了。

using System;
namespace ConsoleApplication2
{
    [Flags]
    public enum Weekday : uint //不必要的枚举 System.DayOfWeek 已经包含了周一至周六
    {
        Sunday, Monday, Tuesday,
        Wednesday, Thursday, Friday, Saturday //定义数值
    }
    public class GetWeekdayNumber
    {
        public string Output = null;
        public void GetNum(Weekday weekday)
        {
            Output = weekday.ToString();//输出
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            GetWeekdayNumber getweekday = new GetWeekdayNumber();//实例化对象
            getweekday.GetNum(Weekday.Sunday);//随意调控星期几
            string str = string.Format("Today is {0}.", getweekday.Output);//输出语句
            Console.WriteLine(str);
        }
    }
}

这段代码可以简化成:

class p{
    static void Main(){
        System.Console.Write(System.DayOfWeek.Friday);
    }
}


查看完整回答
反对 回复 2016-11-04
?
一毛钱

TA贡献156条经验 获得超57个赞

你这里就没有用到判定啊,你只是在switch中判断了I的值然后输出对应的枚举值啊

查看完整回答
反对 回复 2016-11-02
  • 2 回答
  • 0 关注
  • 1378 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信