vb.net 教程 1-12 枚举
发布时间:2020-12-16 23:55:42 所属栏目:大数据 来源:网络整理
导读:当一个变量有几种可能的取值(整数值,包括负数)时,可以将它定义为枚举类型。 枚举只能是整数类型Byte、Integer、Long等,不能是其他类型,如single、double等 个人觉得枚举作用是管理和使用常量,其中的每一个值更好的是用来表示一种状态,其次用文字来表
当一个变量有几种可能的取值(整数值,包括负数)时,可以将它定义为枚举类型。
枚举只能是整数类型Byte、Integer、Long等,不能是其他类型,如single、double等 个人觉得枚举作用是管理和使用常量,其中的每一个值更好的是用来表示一种状态,其次用文字来表示这种状态,比数字更直观。 常见的枚举例如星期几,在下面将会说到。
.net中很多控件的属性都用到枚举,以ComboBox的属性DropDownStyle为例,DropDownStyle是一个ComboBoxStyle枚举值:
Public Enum ComboBoxStyle Simple = 0 DropDown = 1 DropDownList = 2 End Enum 其中 Simple 指定列表始终可见,并指定文本部分可编辑。 DropDown 通过单击下箭头指定显示列表,并指定文本部分可编辑。 DropDownList 通过单击下箭头指定显示列表,并指定文本部分不可编辑。
以星期几为例来看看枚举的定义:
Enum weekday Sunday Monday Tuesday Wednesday Thursday Friday Saturday End Enum 这种情况下表示weekday是一个Integer类型,Sunday的值为0,Monday的值为1.。。。。Saturday的值为6。 等同于以下定义: Enum weekday As Integer Sunday = 0 Monday = 1 Tuesday = 2 Wednesday = 3 Thursday = 4 Friday = 5 Saturday = 6 End Enum 当然我们还可以把其中的成员定义为一个负数,例如以下定义: Enum weekday As Integer Sunday = -3 Monday = 1 Tuesday Wednesday Thursday Friday Saturday End Enum 每个成员的值依次为-3、1、2、3、4、5、6 如果按照以下定义: Enum weekday As Integer Sunday = 1 Monday = 3 Tuesday = 2 Wednesday Thursday Friday Saturday End Enum 每个成员的值依次为1、3、2、3、4、5、6
新建一个控制台程序,输入以下代码:
Module Module1 Enum weekday As Integer Sunday = 7 Monday = 1 Tuesday Wednesday Thursday Friday Saturday End Enum Sub Main() Dim oneday As Integer Try Do While True Console.WriteLine("请输入一个数字") oneday = Integer.Parse(Console.ReadLine()) Select Case oneday Case weekday.Sunday Console.WriteLine("输入星期天") Case weekday.Monday Console.WriteLine("输入星期一") Case weekday.Tuesday Console.WriteLine("输入星期二") Case weekday.Wednesday Console.WriteLine("输入星期三") Case weekday.Thursday Console.WriteLine("输入星期四") Case weekday.Friday Console.WriteLine("输入星期五") Case weekday.Saturday Console.WriteLine("输入星期六") Case Else Console.WriteLine("输入错误的日期") End Select Loop Catch ex As Exception Console.WriteLine("输入的不是整数") Console.ReadKey() End Try End Sub End Module
当输入的是整数的时候,代码会判断是星期几或者是错误的日期,当输入不是整数的时候,代码会提示输入错误并结束。
运行结果:
当一个枚举中有多个状态同时存在的时候,通常使用0、1、2、4、8、16……来定义。例如文件属性
Public Enum FileAttributes [ReadOnly] = 1 Hidden = 2 System = 4 Directory = 16 Archive = 32 Device = 64 Normal = 128 Temporary = 256 SparseFile = 512 ReparsePoint = 1024 Compressed = 2048 Offline = 4096 NotContentIndexed = 8192 Encrypted = 16384 End Enum
当文件属性既只读又是隐藏的时候,那么该文件的属性等于3(1+2),当文件属性包含只读、隐藏、系统的时候,该文件属性为7(1+2+4)。
详细可以参看《
vb.net 教程 4-2 目录操作 DirectoryInfo 3》和《
vb.net 教程 4-2 目录操作 DirectoryInfo 3 篇外》
由于.net平台下C#和vb.NET很相似,本文也可以为C#爱好者提供参考。 学习更多vb.net知识,请参看vb.net 教程 目录 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |