-
C#学习13————枚举的类型转换
QQstate state = QQstate.Online; // 枚举类型默认可与int类型互相转换 枚举类型和int类型是兼容的 // 通过强制转换进行转换 // 枚举类型转int类型 int n = (int)state; Console.WriteLine(n); // #region可以将写好的一个模块隐藏起来,清晰界面 #region 写了一个5,并显示 int number = 5; Console.WriteLine(number); #endregion // int类型转枚举类型 int n2 = 3; Season season = (Season)n2; Console.WriteLine(season); // 所有的类型都能转换为string类型 int n3 = 10; string s = n3.ToString(); decimal d = 5000m; string s2 = d.ToString(); Console.WriteLine(s); Console.WriteLine(d); // 枚举与字符串的转换 QQstate state2 = QQstate.QMe; string s3 = state2.ToString(); Console.WriteLine(s3); // 字符串转换为枚举 string s4 = "3"; //or string s4="Winter"; //调用parse帮助我们将字符串转换为对应的枚举类型; // Season season2= (Season)Enum.Parse(typeof(Season), s4); Console.WriteLine(season2); public enum QQstate { //枚举的int类型默认从0开始; Online, Basy, Offline, Leave, QMe } public enum Season { //在这个枚举中的默认转换则从4开始 Spring=3, Summer, Autumn, Winter }
//用户输入数字,程序显示对应状态 #region 第一种方法 bool b = true; while (b) { Console.WriteLine("请输入您的QQ状态:1-Online;2-Offline;3-basy;4-leave;5-QMe"); string State = Console.ReadLine(); switch (State) { case "1": QQstate state = (QQstate)Enum.Parse(typeof(QQstate), State); Console.WriteLine(state); b = false; break; case "2": QQstate state2 = (QQstate)Enum.Parse(typeof(QQstate), State); Console.WriteLine(state2); b = false; break; case "3": QQstate state3 = (QQstate)Enum.Parse(typeof(QQstate), State); Console.WriteLine(state3); b = false; break; case "4": QQstate state4 = (QQstate)Enum.Parse(typeof(QQstate), State); Console.WriteLine(state4); b = false; break; case "5": QQstate state5 = (QQstate)Enum.Parse(typeof(QQstate), State); Console.WriteLine(state5); b = false; break; default: Console.WriteLine("输入有误,请重新输入"); break; } } #endregion // 思考:如果是直接转化的话可以考虑去除switch结构,直接进行转化,并添加try、catch与循环保证程序稳定正常运行 //下面这种方法的漏洞在于输入数字时转化失败并不报错,所以成功的还是上一种 bool bo = true; while (bo) { try { Console.WriteLine("请输入您的QQ状态:1-Online;2-Offline;3-basy;4-leave;5-QMe"); string State_levelup = Console.ReadLine(); QQstate state_levelup = (QQstate)Enum.Parse(typeof(QQstate), State_levelup); Console.WriteLine(state_levelup); bo = false; } catch { Console.WriteLine("输入有误请重新输入"); } } public enum QQstate { Online=1, Offline, Basy, Leave, QMe }
原文链接:https://www.cnblogs.com/interesters-together/p/15988164.html
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
关于JS定时器的整理
JS中使用Promise.all控制所有的异步请求都完
js中字符串的方法
import-local执行流程与node模块路径解析流程
检测数据类型的四种方法
js中数组的方法,32种方法
前端操作方法
数据类型
window.localStorage.setItem 和 localStorage.setIte
如何完美解决前端数字计算精度丢失与数