zoukankan      html  css  js  c++  java
  • 枚举的应用你知道多少?

    大家好,我是大成子,今天给大家讲一讲枚举的应用。

    前言

    枚举类型enum是C#中基本的值类型数据类型,适当的用好它,有助于提高代码的简洁性和易读性。

    枚举语法定义格式为:enum 枚举名 {枚举元素1,枚举元素2,……};

    应用

    在正常的开发中,像人的性别、数据的状态、人的学历水平、音乐播放器的播放模式等等应用场景,在数据库中往往存的是对应的code,比如性别,0---男,1---女,2---未知,我们在后台代码中则有枚举:


    性别的枚举

    数据状态的枚举

    相应的转换

    在实际当中,存放于数据库的字段一般为varchar,到后台就是string,所以都是在string和枚举之间互相转换。

    string=>枚举


     

    实际上我这里先将string转换了int再转换成枚举值

    但是当我们数据库中存的字符在后台并不能转换成int型,该怎么办呢,比如用来存时间节点的年份,年中--Mid,年末--End,难道还能定义这样的枚举吗?


    这显示是行不通的

    这个时候我们想到了加Attribute

    分别在枚举成员的头上加上[Description]如下图所示:


    年份节点的枚举

    别忘了要引入命名空间:


    引入命名空间

    另起一个拓展类:注:类必须是静态类,方法必须是静态方法,关键字this(在我的另一篇文章里有讲解拓展方法的学习)


    static类

    static方法

    具体实现

    具体实现的代码小编就不细讲了,有不明白的可以再联系小编,别忘记还需要引入命名空间:


    引入命名空间

    接下来,我们去控制台测试一下:


     

    测试结果

    很明显,是没错的。好了,今天的学习就到这里结束咯,我们下期再见!

    微信公众号:dotNET学习天地

    个人网站:https://www.dachengzi.co/

    知乎:https://www.zhihu.com/people/tu-dou-hen-dou-49/posts

  • 相关阅读:
    vue--路径前面的@的意思
    格式化规则修改prettierrc
    windows快捷键
    使用npm 添加less之后报错
    IOS中如何提高UITableView的性能?
    ffmpeg解码h264 Increasing reorder buffer
    Chrome浏览器关联文件图标空白问题解决方案
    mysql 问题sql 截图
    1、HR需要哪些自我提升
    1、文案职业大揭秘
  • 原文地址:https://www.cnblogs.com/xingxingzhou/p/11575515.html
Copyright © 2011-2022 走看看