2015年5月6日 星期三

C# 列舉(Enum)類型的好處

最近才發現Enum的好處很多,不過這裡只介紹 - 使用它來讓程式閱讀性提高,分享給同好
Enum的介紹很多,這裡就不囉嗦了。


首先宣告OrderStatus為Enum Type

public enum OrderStatus:int
{
    Pending = 10, Processing = 20, Completed = 30, Canceled = 40
}

讓後就可以在程式中使用了

//容易閱讀的範例
OrderStatus status;
status = OrderStatus.Completed;
switch(status)
{
    case OrderStatus.Canceled:
        //訂單取消相關的程式...
        Console.WriteLine("Order was {0} and status code is {1}.", status, (int)status);
        break;
    case OrderStatus.Completed:
        //訂單完成相關的程式...
        Console.WriteLine("Order was {0} and status code is {1}.", status, (int)status);
        break;
    case OrderStatus.Pending:
        //訂單擱置未定相關的程式...
        Console.WriteLine("Order was {0} and status code is {1}.", status, (int)status);
        break;
    case OrderStatus.Processing:
        //訂單處理中相關的程式...
        Console.WriteLine("Order was {0} and status code is {1}.", status, (int)status);
        break;
}

以前如果没有使用Enum,case後面可能是一個數字,然後再加上註解說明這個數字代表的意思,由以上例子可以很容易發現Enum的好處。



沒有留言: