枚举类型
1、枚举语法
[public] enum 枚举名 { 值1, 值2, 值3, ....... 值n }[public]是可选项。
2、实例1
代码:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 枚举 { class Program { enum Days { Sun, Mon, Tue, Wed, Thu, Fri, Sat }; static void Main(string[] args) { int x = (int)Days.Sun; int y = (int)Days.Fri; Console.WriteLine("Sun = {0}", x); Console.WriteLine("Fri = {0}", y); Console.ReadKey(); } } }运行结果
3、枚举和int类型之间转换
(1)枚举转化成int型
代码
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 枚举 { class Program { public enum QQstate { OnLine, OffLine, Leave, Busy, QMe }; static void Main(string[] args) { QQstate st1 = QQstate.OnLine; //枚举类型和int类型默认可以相互转换 int num = (int)st1; //强制类型转换 Console.WriteLine("num:{0}", num); Console.WriteLine("Busy:{0}", (int)QQstate.Busy); Console.ReadKey(); } } }运行结果
(2)int型转化成枚举型
代码
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 枚举 { class Program { public enum QQstate { OnLine, OffLine, Leave, Busy, QMe }; static void Main(string[] args) { int n = 3; //枚举类型和int类型默认可以相互转换 QQstate st1 = (QQstate)n; //强制类型转换 Console.WriteLine("枚举型:{0}", st1); Console.ReadKey(); } } }运行结果
4、枚举类型和string类型转换
(1)枚举类型转化成string类型
代码
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 枚举 { class Program { public enum QQstate { OnLine, OffLine, Leave, Busy, QMe }; static void Main(string[] args) { //枚举类型和string类型默认可以相互转换 QQstate st1 = QQstate.OnLine; string str = st1.ToString(); //强制类型转换 Console.WriteLine("字符串:{0}", str); Console.ReadKey(); } } }运行结果
(2)string类型转化成枚举类型
Enum 类:为枚举提供基类。
方法:
Parse(Type, String) :将一个或多个枚举常数的名称或数字值的字符串表示转换成等效的枚举对象。代码
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 枚举 { class Program { public enum QQstate { OnLine, OffLine, Leave, Busy, QMe } public enum Gender { 男, 女 } static void Main(string[] args) { string str = "2"; //调用Parse()方法将字符串转化成对应的枚举类型 QQstate st1=(QQstate)Enum.Parse(typeof(QQstate),str); Console.WriteLine("枚举型:{0}", st1); Console.ReadKey(); } } }运行结果