C#的枚举类型

枚举(enum)实际上是为一组在逻辑上密不可分的整数值提供便于记忆的符号。比如,我们声明一个代表星期的枚举类型的变量:

enum WeekDay
    Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday
}
WeekDay day;

注意:结构是由不同类型的数据组成的一组新的数据类型,结构类型的变量的值是由各个成员的值组合而成的。而枚举则不同,枚举类型的变量在某一时刻只能取枚举中某一个元素的值。比如,day这个表示“星期”的枚举类型的变量,它的值要么是Sunday,要么是Monday或其它的星期元素,但它在一个时刻只能代表具体的某一天,不能既是星期二、又是星期三。

day=Tuseday;

按照系统的默认,枚举中的每个元素类型都是int型,且第一个元素删去的值为0,它后面的每一个连续元素的值按加1递增。在枚举中,也可以给元素直接赋值,如下把星期于的值设为1,其后的元素的值分别为2,3,......

enum WeekDay
    Sunday=1,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday
};
为枚举类型的元素所赋的值的类型限于long、int、short和byte等整数类型。

时间: 2024-09-30 04:04:23

C#的枚举类型的相关文章

EMF介绍系列(四、枚举类型、自定义类型和Map)

除了普通的类(接口)以外,在类图里可以定义一些特殊的元素,比较常见的是枚举类型 .自定义类型,它们对于一个完整可用的模型也是必不可少的,这篇帖子主要介绍EMF里它们 的使用方法.另外,由于EMF对Map的支持比较特别,所以在这里也简要介绍一下Map类型的定 义方法. 枚举类型 继续前面帖子的例子,现在要为产品增加一个评分属性,评分值可以是好中差之一,像这 样属性值只能是有限几个值之一的属性就应该定义为枚举类型(Enumeration).在类图里首 先创建一个名为Score的枚举类型,然后为它增加

ASP.NET中绑定枚举类型

asp.net 在项目开发中好多地方用了枚举,要把枚举显示到下拉列表框中我们平常的方法就是在下拉列表控件中一个一个添加进去!这样做也行但如果我的枚举类型中的枚举值一旦改变,那么你就得满世界的去找然后再修改很麻烦. 这里我有反射动态的绑定枚举值就可以很方便的做修改了,代码如下: public enum Eume{ 星期一, 星期二, 星期三, 星期四, 星期五} 绑定方法: private void BinderDays(){ Type type = typeof(Eume); FieldInfo

第十三章 枚举类型与位标记[《.net框架程序设计》读书笔记]

.net框架|笔记|程序|设计 第十三章 枚举类型与位标记 一. 枚举类型 1. 使用枚举类型的理由: l 枚举类型是得程序更容易编写.阅读.维护,在代码中使用符号名称代替数字是程序设计的一贯主张. l 强类型的,便于类型检验 2. 注意事项: l 枚举类型继承自System.Enum,System.Enum又继承自System.ValurType l 枚举类型不能定义方法.属性.事件 l 枚举类型为常数而非只读字段,因此可能引入版本问题(见第八章的相关讨论) l 将枚举类型与引用它的类型定义在

枚举类型的用法

C# 语言规范 14.3 枚举成员枚举类型声明的体用于定义零个或多个枚举成员,这些成员是该枚举类型的命名常数.任意两个枚举成员不能具有相同的名称. enum-member-declarations:(枚举成员声明:) enum-member-declaration(枚举成员声明)enum-member-declarations , enum-member-declaration(枚举成员声明 , 枚举成员声明) enum-member-declaration:(枚举成员声明:) attribut

F#教程:枚举类型

F#中枚举类型的定义实例如下: type Season = | Spring = 1 | Summer = 2 | Autumn = 3 | Winter = 4 使用刚定义过的枚举类型的代码如下: let s = Season.Winter if s = Season.Winter then printfn "冬" else printfn "冬以外" 不过如下代码就会编译出错: if s = "Winter" then printfn &qu

Effective Java(3) 用私有构造器或者枚举类型强化Singleton属性

一.背景 所谓的Singleton是指仅仅被实例化一次的类,Singleton通常被用来代表那些本质上唯一的系统组件. 实现Singleton有以下三种方法: ①. 私有构造器,公有静态final域. ②. 私有构造器,公有静态工厂方法. ③. 单元素枚举类型(首选). 二.私有构造器,公有静态final域 public class Singleton1 { public static final Singleton1 INSTANCE = new Singleton1(); // 公有静态fi

高阶Java-Java枚举类型enum应用详解

java的Enum枚举类型终于在j2se1.5出现了.之前觉得它只不过是鸡肋而已,可有可无.毕竟这么多年来,没有它,大家不都过得很好吗?今日看<Thinking in Java>4th edition,里面有一句话"有时恰恰因为它,你才能够"优雅而干净"地解决问题.优雅与清晰很重要,正式它们区别了成功的解决方案与失败的解决方案.而失败的解决方案就是因为其他人无法理他."使用Enum枚举类型,可以将以前笨拙的代码变得优雅简单?但是,我同时也在思考另外一个问

C/C++中枚举类型(enum)

如果一个变量你需要几种可能存在的值,那么就可以被定义成为枚举类型.之所以叫枚举就是说将变量或者叫对象可能存在的情况也可以说是可能的值一一例举出来. 举个例子来说明一吧,为了让大家更明白一点,比如一个铅笔盒中有一支笔,但在没有打开之前你并不知道它是什么笔,可能是铅笔也可能是钢笔,这里有两种可能,那么你就可以定义一个枚举类型来表示它! enum box{pencil,pen};//这里你就定义了一个枚举类型的变量叫box,这个枚举变量内含有两个元素也称枚举元素在这里是pencil和pen,分别表示铅

JDK1.5枚举类型学习

Enum作为Sun全新引进的一个关键字,看起来很象是特殊的class, 它也可以有自己的变量,可以定义自己的方法,可以实现一个或者多个接口. 当我们在声明一个enum类型时,我们应该注意到enum类型有如下的一些特征. 1.它不能有public的构造函数,这样做可以保证客户代码没有办法新建一个enum的实例. 2.所有枚举值都是public , static , final的.注意这一点只是针对于枚举值,我们可以和在普通类里面定义 变量一样定义其它任何类型的非枚举变量,这些变量可以用任何你想用的