枚舉

 [System.Flags]
    public enum ReportEnum
    {
        FirstReport=0,
        MiddleReport=1<<0,
        ThirdReport=1<<1,
        YearReport=1<<2,
        LatestReport=1<<3
    }

    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("hello world");

            //遍歷枚舉
            foreach (ReportEnum s in Enum.GetValues(typeof(ReportEnum)))
            {
                Console.WriteLine(s);
            }

            //值轉換爲枚舉,加了Flags,輸出YearReport,LatestReport 不加輸出10,數值若是轉換失敗直接返回數字
            ReportEnum rptEnum = (ReportEnum)10;
            Console.WriteLine(rptEnum);

            //字符串轉換 加了Flags,輸出YearReport,ThirdReport 不加輸出6 若是字符串不匹配會報錯
            ReportEnum rptEnum2 = (ReportEnum)Enum.Parse(typeof(ReportEnum), "YearReport,ThirdReport", true);
            Console.WriteLine(rptEnum2);

            //字符串轉換 加了Flags,輸出YearReport,ThirdReport 不加輸出6 若是字符串不匹配默認轉換成第一個FirstReport
            ReportEnum rptEnum3;
            Enum.TryParse("YearReport,ThirdReport", out rptEnum3);
            Console.WriteLine(rptEnum3);
        }
    }
相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息