C# 语法练习(6): 枚举
2008-12-31 17:04
211 查看
显示枚举、枚举值、枚举名:
转换数值或字符串到枚举:
获取枚举的 Names 和 Values:
枚举值是一个整数(默认是 int 类型、从 0 开始), 可以自定义枚举值:
可以指定所有整型(不包括 char 类型)为枚举值的类型, 下面是指定为 byte:
枚举经常这样用:
using System; class MyClass { enum MyEnum { AA, BB, CC }; /* 类型定义不能在函数体内 */ static void Main() { MyEnum e = MyEnum.CC; Console.WriteLine(e); // CC Console.WriteLine((byte)e); // 2 Console.WriteLine((int)e); // 2 Console.WriteLine(Convert.ToString(e)); // CC Console.ReadKey(); } }
转换数值或字符串到枚举:
using System; class MyClass { enum MyEnum { AA, BB, CC }; static void Main() { MyEnum e; e = (MyEnum)1; Console.WriteLine(e); // BB e = (MyEnum)Enum.Parse(typeof(MyEnum), "BB"); Console.WriteLine(e); // BB Console.ReadKey(); } }
获取枚举的 Names 和 Values:
using System; class MyClass { enum MyEnum { AA, BB, CC }; static void Main() { foreach (string s in Enum.GetNames(typeof(MyEnum))) { Console.WriteLine(s); // AA/BB/CC } foreach (int n in Enum.GetValues(typeof(MyEnum))) { Console.WriteLine(n); // 0/1/2 } Console.ReadKey(); } }
枚举值是一个整数(默认是 int 类型、从 0 开始), 可以自定义枚举值:
using System; class MyClass { enum MyEnum { AA=2, BB, CC=7, DD, EE }; static void Main() { foreach (int i in Enum.GetValues(typeof(MyEnum))) { Console.WriteLine(i); // 2/3/7/8/9 } Console.ReadKey(); } }
可以指定所有整型(不包括 char 类型)为枚举值的类型, 下面是指定为 byte:
using System; class MyClass { enum MyEnum : byte { AA, BB, CC, DD }; static void Main() { string[] Names = Enum.GetNames(typeof(MyEnum)); foreach (string s in Names) { Console.WriteLine(s); // AA/BB/CC/DD } byte[] Values = (byte[])Enum.GetValues(typeof(MyEnum)); foreach (byte n in Values) { Console.WriteLine(n); // 0/1/2/3 } Console.ReadKey(); } }
枚举经常这样用:
using System; class MyClass { enum MyEnum { AA = 0x0, BB = 0x1, CC = 0x2, DD = 0x4, EE = 0x8, FF = 0x10, GG = 0x20, HH = 0x40 } static void Main() { MyEnum es = MyEnum.CC | MyEnum.DD; Console.WriteLine(es); // 6 Console.ReadKey(); } }
相关文章推荐
- C# 语法练习(9): 类[一] - 访问限制、方法、字段、属性
- C# 语法练习(3): 运算符
- C# 语法练习(5): 语句
- C# 语法练习(11): 类[三] - 构造函数、析构函数、base、this
- C# 基础语法小练习
- C# 语法练习(10): 类[二] - 继承、覆盖、多态、隐藏
- C# 语法练习(14): 类[六] - 事件
- C#学习第六天 基础语法练习游戏--飞行棋
- C# 语法练习(8): 函数
- C# 语法练习(13): 类[五] - 索引器
- C# 语法练习(2): 字符转义
- C# 语法练习(4): 类型转换
- C# 语法练习(1): 基本数据类型
- C# 语法练习(7): 数组
- C# 语法练习(12): 类[四] - 抽象类与抽象成员、密封类与密封成员
- C# 语法练习(15): 接口
- 【C#】C#高级语法
- (C#基本语法)4.运算符与表达式
- 理解C#中的枚举(简明易懂)
- 潜移默化学会C#不常用语法-《1》-动态类型绑定dynamic