static void Main(string[] args) { #region 将枚举类型强转成int类型 //QQState state = QQState.OnLine; ////枚举类型转换可以跟int类型相互转换 枚举类型跟int类型是兼容的 //int n = (int)state; //Console.WriteLine(n); //Console.WriteLine((int)QQState.OffLine); //Console.ReadKey(); #endregion #region 将int转换成枚举类型 //int n1 = 3; //QQState stat = (QQState)n1; //Console.WriteLine(stat); //Console.ReadKey(); #endregion //所有类型都能转换成string类型 #region 将枚举类型转成字符串类型 //int n1 = 10; QQState stat = QQState.Leave; string s = stat.ToString(); Console.WriteLine(s); Console.ReadKey(); #endregion }
public void CheckState(qqOnlineWebService qqOnline) { if (!string.IsNullOrEmpty(this.QQ) && (null != qqOnline)) { string state = qqOnline.qqCheckOnline(this.QQ); if (state.Equals("Y", StringComparison.CurrentCultureIgnoreCase)) { this.state = QQState.Online; } else if (state.Equals("N", StringComparison.CurrentCultureIgnoreCase)) { this.state = QQState.Offline; } else if (state.Equals("E", StringComparison.CurrentCultureIgnoreCase)) { this.state = QQState.ErrorQQ; } else if (state.Equals("A", StringComparison.CurrentCultureIgnoreCase)) { this.state = QQState.InvalidCertificate; } else if (state.Equals("V", StringComparison.CurrentCultureIgnoreCase)) { this.state = QQState.OutOfFreeNum; } } }
public static ClientManager GetClientManagerUser(IUnityContainer container, QQState user) { if (!Manager.ContainsKey(user.QQNum)) { Manager.Add(user.QQNum, new ClientManager(user, new SmartQQClient(container))); } return(Manager[user.QQNum]); }
static void Main(string[] args) { Seeons s = Seeons.春; QQState State = QQState.QMe; Console.WriteLine(State); Console.WriteLine(s); Console.ReadKey(); }
static void Main(string[] args) { //将枚举类型强转成int类型 //QQState state = QQState.OnLine; //int n = (int)state; //Console.WriteLine(n); //Console.ReadKey(); //将int类型强转成枚举类型 //int n1 = 3; //QQState state1 = (QQState)n1; //Console.WriteLine(state1); //Console.ReadKey(); //所有的类型都能够转换成string类型 Console.WriteLine("请选择在线类型。1--OnLine,2--OffLine,3--Leave,4--Busy,5--QMe"); string stateInput = Console.ReadLine(); switch (stateInput) { case "1": QQState state = (QQState)Enum.Parse(typeof(QQState), stateInput); Console.WriteLine("您选择的在线类型是{0}", state); break; case "2": QQState state1 = (QQState)Enum.Parse(typeof(QQState), stateInput); Console.WriteLine("您选择的在线类型是{0}", state1); break; case "3": QQState state2 = (QQState)Enum.Parse(typeof(QQState), stateInput); Console.WriteLine("您选择的在线类型是{0}", state2); break; case "4": QQState state3 = (QQState)Enum.Parse(typeof(QQState), stateInput); Console.WriteLine("您选择的在线类型是{0}", state3); break; case "5": QQState state4 = (QQState)Enum.Parse(typeof(QQState), stateInput); Console.WriteLine("您选择的在线类型是{0}", state4); break; default: Console.WriteLine("您输入的代码有错误"); break; } Console.ReadKey(); }
static void Main(string[] args) { //变量类型 变量名 = 值 Gender gender = Gender.男; Seasons s = Seasons.春; QQState state = QQState.OnLine; Console.WriteLine(state); Console.ReadKey(); }
static void Main(string[] args) { //QQState state = QQState.OnLine; //int n = (int)state; //Console.WriteLine(n); //Console.WriteLine(state.ToString()); //int n1 = 2; //QQState state = (QQState)n1; //Console.WriteLine(state); //string s = "0"; //QQState state = (QQState)Enum.Parse(typeof(QQState), s); //Console.WriteLine(state); //枚举练习 //提示用户选择一个在线状态,我们接收,并将用户的输入转换成枚举类型 //再次打印到控制太中 Console.WriteLine("请选择您的qq在线状态 1--OnLine 2--OffLine 3--Leave 4--Busy 5--QMe"); string input = Console.ReadLine(); switch (input) { case "1": QQState s1 = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您选择的在线状态是{0}", s1); break; case "2": QQState s2 = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您选择的在线状态是{0}", s2); break; case "3": QQState s3 = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您选择的在线状态是{0}", s3); break; case "4": QQState s4 = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您选择的在线状态是{0}", s4); break; case "5": QQState s5 = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您选择的在线状态是{0}", s5); break; } Console.ReadKey(); }
static void Main(string[] args) { #region int强制转换 //QQState state = QQState.Online; //Console.WriteLine((int)QQState.Online); //Console.WriteLine((int)QQState.Offline); //Console.WriteLine((int)QQState.Leave); //Console.WriteLine((int)QQState.Busy); //Console.WriteLine((int)QQState.Qme); #endregion #region int转枚举类型 //int n1 = 3; //QQState state1 = (QQState)n1; //Console.WriteLine(state1); //Console.ReadKey(); #endregion // string s = "abxc"; //QQState states= (QQState) Enum.Parse(typeof(QQState), s); //Console.WriteLine(states); QQState state = 0; Console.WriteLine("请输入你的qq在线状态 1--online 2--offline 3--leave 4--busy 5--Qme"); string input = Console.ReadLine(); switch (input) { case "1": state = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您当前qq的状态是{0}.", state); break; case "2": state = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您当前qq的状态是{0}.", state); break; case "3": state = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您当前qq的状态是{0}.", state); break; case "4": state = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您当前qq的状态是{0}.", state); break; case "5": state = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您当前qq的状态是{0}.", state); break; } }
static void Main(string[] args) { Gender gender = Gender.男; //QQState state = QQState.OffLine; //int num=(int)state; //Console.WriteLine(num); //Console.WriteLine((int)QQState.OffLine); //枚举到字符串的转换 //QQState state = QQState.OffLine; //string s = state.ToString(); //字符串到枚举的转换 string s = "Leave123"; QQState state = (QQState)Enum.Parse(typeof(QQState), s); Console.WriteLine(state); Console.ReadKey(); }
static void Main(string[] args) { QQState qQState = QQState.OnLine; }
static void Main(string[] args) { #region 将枚举类型强转成int类型 //QQState state = QQState.OnLine; ////枚举类型默认可以跟int类型互相转换 枚举类型跟int类型是兼容的 //int n = (int)state; //Console.WriteLine(n); //Console.WriteLine((int)QQState.OffLine); //Console.WriteLine((int)QQState.Leave); //Console.WriteLine((int)QQState.Busy); //Console.WriteLine((int)QQState.QMe); //Console.ReadKey(); #endregion #region 将int类型强转为枚举类型 //int n1 = 3; //QQState state = (QQState)n1; //Console.WriteLine(state); //Console.ReadKey(); #endregion #region 将枚举类型转换成字符串类型 //所有的类型都能够转换成string类型 // int n1 = 10; //// double n1 = 3.14; // decimal n1 = 5000m; // string s = n1.ToString(); // Console.WriteLine(s); // Console.ReadKey(); //QQState state = QQState.OnLine; //string s = state.ToString(); //Console.WriteLine(s); //Console.ReadKey(); #endregion #region 将字符串类型转换为枚举类型 //string s = "ABCDEFG"; ////将s转换成枚举类型 ////Convert.ToInt32() int.parse() int.TryParse() ////调用Parse()方法的目的就是为了让它帮助我们将一个字符串转换成对应的枚举类型 //// //QQState state = (QQState)Enum.Parse(typeof(QQState), s); //Console.WriteLine(state); //Console.ReadKey(); #endregion //枚举练习 //提示用户选择一个在线状态,我们接受,并将用户的输入转换成枚举类型。 //再次打印到控制台中 Console.WriteLine("请选择您的qq在线状态 1--OnLine 2--OffLine 3--Leave 4--Busy 5--QMe"); string input = Console.ReadLine(); switch (input) { case "1": QQState s1 = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您选择的在线状态是{0}", s1); break; case "2": QQState s2 = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您选择的在线状态是{0}", s2); break; case "3": QQState s3 = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您选择的在线状态是{0}", s3); break; case "4": QQState s4 = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您选择的在线状态是{0}", s4); break; case "5": QQState s5 = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您选择的在线状态是{0}", s5); break; } Console.ReadKey(); }
static void Main(string[] args) { // 男 女 // 0 1 ,male female ,男,女 int a = 15; Gender gender = Gender.Male; //枚举类型赋值 gender = Gender.Female; //online offline hiden; 0 1 2 //可读性 差 //int state = 0; //if (state == 0) { // Console.WriteLine("在线状态"); //} //state = 3; //QQState state = QQState.Online; //if (state == QQState.Online) { // Console.WriteLine("在线状态"); //} #region int 和枚举之间相互转换 //枚举类型和int类型是相互兼容的,所有可以使用强制类型转换 //int state = (int)QQState.Online; //Console.WriteLine(state); //Console.WriteLine((int)QQState.Offline); //Console.WriteLine((int)QQState.Hidden); //Console.WriteLine((int)QQState.Leave); //Console.WriteLine((int)QQState.Busy); //int 转枚举 // 根据枚举的值进行转换,如果值不存在,就不转换,也不报错 //QQState qq = (QQState)5; //QQState qq = (QQState)10; //Console.WriteLine(qq); #endregion //枚举转字符串 枚举转字符串,直接.ToString() QQState state = QQState.Online; Console.WriteLine(state.ToString()); //字符串转枚举 string str = "123"; int myInt = int.Parse(str); //字符串转枚举Enum.Parse(),参数1:需要传入目标类型,typeof 获取类型,强转 QQState state1 = (QQState)Enum.Parse(typeof(QQState), "10"); Console.WriteLine("state1 = " + state1); //无论是字符串类型的数字,还是普通数字,转枚举,如果值不匹配,不会报异常, //但是如果转的字符串 不匹配,会报异常 //QQState state2 = (QQState)Enum.Parse(typeof(QQState), "hello"); //Console.WriteLine("state2 = " + state2); Console.WriteLine("请输入你的qq状态 ,1 - 在线,2 - 离线,3 - 隐身,4 - 离开,5 - 忙碌"); string stateStr = Console.ReadLine(); QQState state3 = (QQState)Enum.Parse(typeof(QQState), stateStr); switch (state3) { case QQState.Online: Console.WriteLine("在线状态"); break; case QQState.Offline: Console.WriteLine("离线状态"); break; case QQState.Hidden: Console.WriteLine("隐身状态"); break; case QQState.Leave: Console.WriteLine("离开状态"); break; case QQState.Busy: Console.WriteLine("忙碌状态"); break; } Console.ReadKey(); }
static void Main(string[] args) { #region 将枚举类型强转成int类型 //int n = 10; //Gender gender = Gender.男; //Sesons seson = Sesons.春; //QQState state = QQState.Busy;//枚举类型默认可以跟int类型互相转换,枚举类型和int类型是兼容的 //n = (int)state; //Console.WriteLine(n); //Console.WriteLine((int)QQState.Online); #endregion #region 将int类型强转换为枚举类型 //int n1 = 3; //QQState state = (QQState)n1; //Console.WriteLine(state); #endregion #region 所有的类型都可以转换成string类型 //所有的类型都可以转换成string类型 //int n2 = 10; //string s = n2.ToString(); //double n1 = 3.14; //string s1 = n1.ToString(); //Console.WriteLine(s); #endregion #region string转换为枚举类型 //string s = "0"; ////将s转换成枚举类型 ////调用parse()方法,不常用 //QQState state = (QQState)Enum.Parse(typeof(QQState), s); //Console.WriteLine(state); //可以将一个枚举类型的变量跟int类型和string类型互相转换 //枚举类型默认是跟int类型相互兼容的,所以可以通过强制类型转换的语法互相转换 //当转换一个枚举中没有的值得时候,不会抛异常,而是直接将数字显示出来。 //枚举同样可以跟string类型互相转换,如果将枚举类型转换为string类型,则直接调用ToString() //如果将字符串转换成枚举类型,则需要下面这样一行代码 //(要转换的枚举类型)Enum.Parse(typeof(要转换的枚举类型),“要转换的字符串”) //如果转换的字符串是数字,则就算枚举中没有,也不会抛异常 //如果转换的字符串是文本,如果枚举中没有,则会抛出异常 #endregion #region 枚举练习 Console.WriteLine("请选择您的qq在线状态1-OnLine 2-OffLine 3-Leave 4-Busy"); string input = Console.ReadLine(); switch (input) { case "1": QQState s1 = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您选择的在线状态是{0}", s1); break; case "2": QQState s2 = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您选择的在线状态是{0}", s2); break; case "3": QQState s3 = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您选择的在线状态是{0}", s3); break; case "4": QQState s4 = (QQState)Enum.Parse(typeof(QQState), input); Console.WriteLine("您选择的在线状态是{0}", s4); break; } #endregion Console.ReadKey(); }
static void Main(string[] args) { Sesons s = Sesons.春; QQState state = QQState.OnLine; }
public ClientManager(QQState user, SmartQQClient client) { _user = user; _client = client; }