有时我们需要将枚举定义为1,2,4,8.......的值,这样当传入一个3,那么就是表示1,2的组合,假如传入7,那就表示1,2,4的组合。要实现这种功能我们需要用到FlagsAttribute。具体用法如下:
1.定义Enum。
| 以下是引用片段: [Flags] public enum FormType { Reimburse=1, Payment=2, Precharge=4, PO=8 } |
2.组合枚举值的判断:
| public static void Print(FormType ft) { if((ft&FormType.Reimburse)==FormType.Reimburse)//和判断 { Console.WriteLine("Reimburse"); } if((ft&FormType.Payment)==FormType.Payment) { Console.WriteLine("Payment"); } if((ft&FormType.Precharge)==FormType.Precharge) { Console.WriteLine("Precharge"); } if((ft&FormType.PO)==FormType.PO) { Console.WriteLine("PO"); } Console.WriteLine("End"); } |
3.生成组合枚举:
| 以下是引用片段: FormType ft=FormType.Reimburse|FormType.PO; Print(ft); |
运行输出的结果就是:
Reimburse
PO
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!



