using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _20.枚举类型
{
enum orientation : byte
{
north = 1,
south = 2,
east = 3,
west = 4
}
class Program
{
static void Main(string[] args)
{
/**
* 枚举类型:
* 使用enum关键字定义枚举类型。
* 其定义语法:
* enum [: ]
* {
* ,
* ,
* ,
* ...
*
* }
*
* 定义枚举变量:
* ;
*
* 引用枚举变量:
* = .;
*
* 解析说明:
* 1. 枚举使用一个基本类型来存储。
* 2. 枚举类型可以提取每个值都存储为该基本类型的一个值,默认情况下该类型为int。
* 3. 用来指定枚举值类型。
* 4. 枚举的基本类型:byte,sbyte,short,ushort,int,uint,long,ulong。
* 5. 在默认情况下,每个值都会根据定义的顺序(从0开始),自动赋值给对应的基本类型值。
* 6. 使用=号运算符,指定每个枚举的实际值,可以多个枚举指定相同的值。
* 7. 以循环方式指定枚举值会出现错误。
* 例如:
* enum :
* {
* = ,
* = ,
* }
*
*/
byte directionByte;
string directionString
;
orientation myDirection = orientation.north;
Console.WriteLine("myDirection = {0}", myDirection);
directionByte = (byte)myDirection;
directionString = Convert.ToString(myDirection);
Console.WriteLine("byte equivalent = {0}", directionByte);
Console.WriteLine("string equivalent = {0}", directionString);
Console.WriteLine("string equivalent = {0}", myDirection.ToString());
// 以下方法作用:把string类型转换为枚举值。
// (enumerationType)Enum.Parse(typeof(enumerationType), enumerationValueString);
// enumerationValueString参数是区分大小写的。
// typeof运算符是得到操作数的类型。
string myString = "west";
orientation direction = (orientation)Enum.Parse(typeof(orientation), myString);
Console.WriteLine("direction = {0}", (byte)direction);
Console.ReadKey();
}
}
}
网页标题:二十、枚举类型
文章来源:
http://kswsj.cn/article/ghgpis.html