.NET中的枚举用法浅析
本文简单分析了.NET中的枚举用法。分享给大家供大家参考。具体分析如下:
我理解的枚举就是编程中约定的一个“可选值”;例如QQ的在线状态,分别有 在线,Q我吧,隐身,忙碌等等。。。我觉得这就是一个枚举。
1.普通枚举
1) 实例
public enum UserState
{
QMe,
OnLine,
OffLine //后面省略
}
ps:像上边的枚举,可以单独写在一个CS文件中。
2)普通枚举的性质
1. 互斥性
2. 每一个值都有一个数值来表示
3. 枚举在编译时,就已经用数值来表示了。
3)字符串转换成枚举
(UserState)Enum.Parse(typeof(UserState),"Red") ;
4)枚举转换成数值、字符串
(int)myColor.Red;
myColor.Red.ToString();
2.标识枚举
但一个事物具有多个属性时,普通枚举就不够用了。
普通枚举是互斥的,标识而枚举是可以组合的。
1)定义
//使用以后结果是Tostring()的,而不是数字的。
public enum GoodMan
{
高=1,
富=2,
帅=4 //这里必须是2的N次方,切不能重复。
}
2)状态组合(或运算)
GoodMan winter = GoodMan.高| GoodMan.富| GoodMan.帅;
3)判定winter中是否具有某个枚举值(与运算)
if(winter&GoodMan.高==GoodMan.高)
希望本文所述对大家的.net程序设计有所帮助。
相关推荐
-
ASP.NET中repeater控件用法实例
本文实例讲述了ASP.NET中repeater控件用法.分享给大家供大家参考.具体实现方法如下: repeater绑定数据: 复制代码 代码如下: protected void Page_Load(object sender, EventArgs e) { if(!IsPostBack) BindStudent(); } private void BindStudent() { string str = ConfigurationManag
-
.NET中的IO操作之文件流用法分析
本文实例讲述了.NET中的IO操作之文件流用法.分享给大家供大家参考.具体分析如下: 读操作 复制代码 代码如下: //1.创建文件流 FileStream fsRead =new FileStream("1.txt",FileMode.Open); //2.创建缓冲区,正常情况下,是不会直接等于文件大小的.这里只有读,所以就这么干了. byte[] bytes =new byte[fsRead.Length]; //3.开始读取, 返回值是读取到的长度. int r =fsRead.
-
.NET中StringBuilder用法实例分析
本文实例讲述了.NET中StringBuilder用法.分享给大家供大家参考.具体分析如下: 为什么要使用StringBuilder 为什么使用StringBuilder要从string对象的特性说起. string对象在进行字符串拼接时,因为字符串的不可变性,string对象会每次拼接,都会复制一个副本出来进行运算,而本身的串仍然留在内存中,大量的临时片段会造成不可忽视的性能损耗.所以在进行大量的字符串拼接时建议使用StringBuilder StringBuilder的简单使用方式: 复制代
-
asp.net 枚举文件里面的数字绑定到DropDownList里面去
复制代码 代码如下: public class AppEnum { public enum PointLogType : int { /// <summary> /// Email确认 /// </summary> [Description("Email确认")] Recruit = 1, //新客户激活+ /// <summary> /// 老客户回馈 /// </summary> [Description("老客户回馈&qu
-
.NET中的异常和异常处理用法分析
本文较为详细的分析了.NET中的异常和异常处理用法.分享给大家供大家参考.具体分析如下: .NET中的异常(Exception) .net中的中异常的父类是Exception,大多数异常一般继承自Exception. 可以通过编写一个继承自Exception的类的方式,自定义异常类! 异常处理机制: 复制代码 代码如下: Try { //可能发生异常的代码 //后续代码 } //Try以外的代码 catch(Exception e) { } finally { } 上述代
-
ASP.NET私有构造函数用法分析
本文实例分析了ASP.NET私有构造函数用法.分享给大家供大家参考.具体分析如下: 一.私有构造函数的特性 1.一般构造函数不是私有或者保护成员,但构造函数可以使私有成员函数,在一些特殊的场合,会把构造函数定义为私有或者保护成员. 2.私有构造函数是一种特殊的实例构造函数.它通常用在只包含静态成员的类中.如果类具有一个或多个私有构造函数而没有公共构造函数,则不允许其他类(除了嵌套类)创建该类的实例. 3.私有构造函数的特性也可以用于管理对象的创建.虽然私有构造函数不允许外部方法实例化这个类,
-
ASP.NET中 script runat server 的用法
本文实例讲述了ASP.NET中<script runat="server">的用法,分享给大家供大家参考.具体如下: 在ASP.NET的.aspx页面中,可以在<head>代码</head>标签中通过<script runat="server">添加代码.其实,这里的代码和.cs文件中的代码地位是相同的,都是在服务器端执行的. 例: 复制代码 代码如下: <script type="text/javas
-
Asp.Net中索引器的用法分析
本文实例分析了Asp.Net中索引器的用法.分享给大家供大家参考.具体如下: 索引器定义类似于属性,但其功能与属性并不相同.索引器提供一种特殊的方法编写get和set访问器.属性可以像访问字段一样访问对象的数据,索引器可以使用户像访问数组一样访问类成员. 一.索引器特性 1.get 访问器返回值.set 访问器分配值. 2.this 关键字用于定义索引器. 3.value 关键字用于定义由 set 索引器分配的值. 4.索引器不必根据整数值进行索引,由您决定如何定义特定的查找机制. 5.索引器可
-
ASP.NET中TimeSpan的用法实例解析
本文实例讲述了ASP.NET中TimeSpan的用法,分享给大家供大家参考.具体如下: ASP.NET 中,两个时间相减,得到一个 TimeSpan 实例,TimeSpan 有一些属性:Days.TotalDays.Hours.TotalHours.Minutes.TotalMinutes.Seconds.TotalSeconds.Ticks,注意没有 TotalTicks. 一.TimeSpan常量.字段 复制代码 代码如下: TimeSpan.MaxValue; //
-
.NET中的枚举用法浅析
本文简单分析了.NET中的枚举用法.分享给大家供大家参考.具体分析如下: 我理解的枚举就是编程中约定的一个"可选值":例如QQ的在线状态,分别有 在线,Q我吧,隐身,忙碌等等...我觉得这就是一个枚举. 1.普通枚举 1) 实例 复制代码 代码如下: public enum UserState { QMe, OnLine, OffLine //后面省略 } ps:像上边的枚举,可以单独写在一个CS文件中. 2)普通枚举的性质 1. 互斥性 2. 每一个值都有一个数值
-
PHP中Enum(枚举)用法实例详解
本文实例讲述了PHP中Enum(枚举)用法.分享给大家供大家参考,具体如下: PHP其实有Enum类库的,需要安装perl扩展,所以不是php的标准扩展,因此代码的实现需要运行的php环境支持. (1)扩展类库SplEnum类.该类的摘要如下: SplEnum extends SplType { /* Constants */ const NULL __default = null ; /* 方法 */ public array getConstList ([ bool $include_def
-
python中xlutils库用法浅析
不少小伙伴认为,直接去操作excel,比我们利用各种代码数据去处理,直接又简单,不那么花里胡哨,但是在代码上,处理数据,直接的软件操作是行不通的,需要我们去利用代码去处理,其实解决麻烦的办法非常简单,只需要我们调用专业的处理数据的模块,就可以轻松处理了,比如excel处理中的xlutils库,下面详细为大家介绍使用. 简单介绍: 最常见的使用在excel中的复制. 安装方式: pip install xlutils 注意点: 虽然可以进行excel的复制.但是只能提供写操作,不能够复制格式. 使
-
Python中int()函数的用法浅析
int()是Python的一个内部函数 Python系统帮助里面是这么说的 >>> help(int) Help on class int in module __builtin__: class int(object) | int(x[, base]) -> integer | | Convert a string or number to an integer, if possible. A floating point | argument will be truncated
-
浅析java中stringBuilder的用法
String对象是不可改变的.每次使用 System.String类中的方法之一时,都要在内存中创建一个新的字符串对象,这就需要为该新对象分配新的空间.在需要对字符串执行重复修改的情况下,与创建新的 String对象相关的系统开销可能会非常昂贵.如果要修改字符串而不创建新的对象,则可以使用System.Text.StringBuilder类.例如,当在一个循环中将许多字符串连接在一起时,使用 StringBuilder类可以提升性能. 通过用一个重载的构造函数方法初始化变量,可以创建 Strin
-
浅析python中的del用法
del是python关键字,就像def.and.or一样.它不是字典.列表的方法,但是可以用来删除字典.列表的元素. python中的del用法比较特殊,新手学习往往产生误解,弄清del的用法,可以帮助深入理解python的内存方面的问题. python的del不同于C的free和C++的delete. 由于python都是引用,而python有GC机制,所以,del语句作用在变量上,而不是数据对象上. if __name__=='__main__': a=1 # 对象 1 被 变量a引用,对象
-
java 枚举类中的valueOf用法说明
目录 枚举类中的valueOf用法 先创建一个BasicEnum的接口 创建一个枚举类实现BasicEnum接口 枚举类valueOf方法的疑问 枚举类中的valueOf用法 前言:今天遇到了一个枚举类的valueOf用法,遇到了一点问题,这里特例写一个demo来测试一下 先创建一个BasicEnum的接口 /** * @Author 徐志 * @date 2020/9/4 12:42 **/ public interface BasicEnum<L,V> { /** * get name *
-
Python中的枚举函数enumerate()的具体用法
相比于range,list等简易单词,enumerate仅凭外形都不太让人愿意用.事实上,enumerate还是很好用的. enumerate()是python的内置函数.适用于python2.x和python3.x enumerate在字典上是枚举.列举的意思 enumerate参数为可遍历/可迭代的对象(如列表.字符串) enumerate多用于在for循环中得到计数,利用它可以同时获得索引和值,即需要index和value值的时候可以使用enumerate enumerate()返回的是一
-
详解Swift中enum枚举类型的用法
一.引言 在Objective-C语言中,没有实际上是整型数据,Swift中的枚举则更加灵活,开发者可以不为其分配值类型把枚举作为独立的类型来使用,也可以为其分配值,可以是字符,字符串,整型或者浮点型数据. 二.枚举语法 Swift中enum关键字来进行枚举的创建,使用case来创建每一个枚举值,示例如下: //创建姓氏枚举,和Objective-C不同,Swift枚举不会默认分配值 enum Surname { case 张 case 王 case 李 case 赵 } //创建一个枚举类型的
-
ES6中class类用法实例浅析
本文实例讲述了ES6中class类用法.分享给大家供大家参考,具体如下: 类语法是ES6中新增的一个亮点特色.我们熟悉的JavaScript终于迎来了真正意义上的类.在之前,想要通过javascript来实现类,通常会采用如下构造函数的模式: function Person(name,age,job){ this.name = name; this.age = age; this.job = job; this.friends = ['Shelby','Court']; } Person.pro
随机推荐
- 如何在Windows Vista中预览PDF文件的方法
- java将图片分割为几个部分示例
- PHP 面向对象程序设计(oop)学习笔记(三) - 单例模式和工厂模式
- 比较有效的使用C#读取文件的代码
- PHP实现的封装验证码类详解
- Linux服务器nginx访问日志里出现大量http 400错误的请求分析
- jquery validate使用攻略 第四步
- JQuery实现展开关闭层的方法
- js对象之JS入门之Array对象操作小结
- 原生js实现轮播图
- bootstrap table 表格中增加下拉菜单末行出现滚动条的快速解决方法
- 高手递招:删除系统顽固文件技巧
- IO复用之select poll epoll的总结(推荐)
- C#枚举类型与结构类型实例解析
- Java嵌套类和内部类详解
- 如何使用PHP获取指定日期所在月的开始日期与结束日期
- java调用ffmpeg实现转换视频
- vue无限轮播插件代码实例
- Java手动方式创建枚举类示例
- vue服务端渲染操作简单入门实例分析