枚举类型

c#中的枚举

孤街浪徒 提交于 2019-11-27 08:13:01
枚举是用户定义的整数类型,它是强类型的,与类同级,通常用来表示一组常量。(成员可以使用汉字) public enum Sex:int //可指定类型有:byte、sbyte、short、ushort、int、uint、long、ulong { 男 = 0, //可指定允许范围的整数,默认为0,以1为增量增加 女 = 1 } 枚举的优点: 1、枚举能够使代码更加清晰,它允许使用描述性的名称表示整数值。 2、枚举使代码更易于维护,有助于确保给变量指定合法的、期望的值。 3、枚举使代码更易输入和读取。 1、简单枚举 枚举使用enum关键字来声明,与类同级。枚举本身可以有修饰符,但枚举的成员始终是公共的,不能有访问修饰符。枚举本身的修饰符仅能使用public和internal。 枚举是值类型,隐式继承自System.Enum,不能手动修改。System.Enum本身是引用类型,继承自System.ValueType。 枚举都是隐式密封的,不允许作为基类派生子类。 枚举类型的枚举成员均为静态,且默认为Int32类型。 每个枚举成员均具有相关联的常数值。此值的类型就是枚举的底层数据类型。每个枚举成员的常数值必须在该枚举的底层数据类型的范围之内。如果没有明确指定底层数据类型则默认的数据类型是int类型。 枚举成员不能相同,但枚举的值可以相同。 枚举最后一个成员的逗号和大括号后面的分号可以省略 2

枚举类的扩展使用

会有一股神秘感。 提交于 2019-11-27 07:23:41
. 没人看的前言    枚举相信大家都不陌生,在日常的开发中,我们在大多数情况下使用枚举一般是为了罗列既定的属性值,作用其实与常量差别不大,但枚举的优势在于,可以定义多种类型的多个常量,自由度和扩展度会大大高于普通常量,而且阅读起来会比常量更加直观,因为枚举内的属性不一定全部都要用到,一般在定义枚举时都会添加一个注释key,也就是此枚举值的说明字段。那么既然枚举可自由扩展,在开发中,我们就可以利用枚举来减少繁琐的代码步骤,甚至解决某些难题。 1.使用枚举扩展属性  举个常见的例子: Excel导出统计数据,其中,Excel内容包括标题、子标题、内容,标题、子标题格式已知  Excel导出相信大家都不陌生,封装数据时,很多人习惯直接在方法体里拼接,这么做后患无穷,最大的两个影响:可读性差、扩展性差,我们可能经常会需要客户该改需求的情况,如果客户提出想要在Excel里加个字段或者换下位置,可能会让人头大。  那么利用枚举,我们可以很好的解决这点。先看枚举实例:  其中,每个枚举值代表一个标题,xxxHead为子标题,xxxField为内容字段,如此一来,Excel的内容便有了一个初步的概图,接下来写入数据也就清晰明了了 /** * @description:分析数据Excel数据枚举 */ public enum AnalysisExcelDataType { DATE("date",

SqlMap免Python环境绿色版下载

 ̄綄美尐妖づ 提交于 2019-11-27 05:50:18
免Python环境绿色版下载 下载地址 下载地址 sqlmap是一个开源的渗透测试工具,可以用来进行自动化检测,利用SQL注入漏洞,获取数据库服务器的权限。它具有功能强大的检测引擎,针对各种不同类型数据库的渗透测试的功能选项,包括获取数据库中存储的数据,访问操作系统文件甚至可以通过外带数据连接的方式执行操作系统命令。 1.1 sqlmap简介 sqlmap支持MySQL, Oracle,PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird,Sybase和SAP MaxDB等数据库的各种安全漏洞检测。 sqlmap支持五种不同的注入模式: l 基于布尔的盲注,即可以根据返回页面判断条件真假的注入; l 基于时间的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是否执行(即页面返回时间是否增加)来判断; l 基于报错注入,即页面会返回错误信息,或者把注入的语句的结果直接返回在页面中; l 联合查询注入,可以使用union的情况下的注入; l 堆查询注入,可以同时执行多条语句的执行时的注入。 1.2 下载及安装 (1)linux下git直接安装 gitclone –depth 1 https://github.com/sqlmapproject/sqlmap.git

Java基础笔记八 枚举

霸气de小男生 提交于 2019-11-27 05:35:36
8. 枚举 8.1. 什么是枚举?为什么要用枚举? 枚举,也是一种自定义的数据类型。这种类型和类很像,但是比类多个一种成员。枚举中可以写枚举元素。 使用枚举,可以限定某些变量的取值范围。 例如:在前面的需求中,我们常把"性别"设置为char类型。但是,如果将性别设置为字符型,那么,这个变量可以取的值,将会非常多。 char gender = ‘男’; gender = ‘女’; gender = ‘a’; gender = ’ '; gender = ‘l’; gender = ‘.’; 再例如:如果需要定义一个变量,来表示月份,这个变量的类型应该是? int month = 1000; 什么情况下使用枚举 当某些变量的取值范围,在有限的几个值中去取。这种情况下,就可以设置为枚举类型。 使用枚举的好处 可以大幅度的提高代码的可读性。 8.2. 枚举的定义与基本的使用 定义枚举,需要使用关键字 enum ,其他的语法,与类完全相同。 在枚举中,可以写出这个枚举类型的变量,可以取到的每一个值。这些值,就是枚举的元素。 9. 异常 9.1. 异常的体系 什么是异常? 异常,指的是程序在编译、运行的过程中遇到的种种不正常的情况,导致程序无法正常的编译、运行。 异常,在Java中,是有专门的类来表示的。 Throwable : 是错误和异常的根类 ​ Error : 错误信息

DELPHI中枚举类型数据的介绍和使用方法

不羁岁月 提交于 2019-11-27 05:01:24
在看delphi程序的时候看到aa=(a,b,c,d);这样的东西,还以为是数组,同事说是函数,呵呵,当然这两个都不屑一击,原来这样式子是在声明并付值一个枚举类型的数据。下边写下来DELPHI中枚举类型数据的介绍和使用方法。见笑。。 ------------------------------------------------------ 枚举类型   Pascal程序不仅用于数值处理,还更广泛地用于处理非数值的数据。例如,性别、月份、星期几、颜色、单位名、学历、职业等。 1、枚举类型的定义 格式: type 枚举类型标识符=(标识符1,标识符2,…,标识符n) 2、枚举类型数据特点 ① 枚举元素只能是标识符; 例如,下列类型定义是合法的:    type days=(sun,mon,tue,wed,thu,fri,sat);    colors=(red,yellow,blue,white,black,green);    而下列类型定义是错误的:    type colortype=('red','yellow','blue','white');    numbers=(1,3,5,7,9); 定义枚举类型时列出的所有枚举元素构成了这种枚举类型的值域(取值范围)。 ② 枚举类型属于顺序类型   根据定义类型时各枚举元素的排列顺序确定它们的序号,且序号从0开始。 例如

枚举与位枚举

馋奶兔 提交于 2019-11-27 03:39:14
枚举类型 是用于声明一组命名的常数的基本数据类型(值类型) 枚举的定义 声明enum变量 enum_name 指定枚举的类型名称 enumeration list 是一个用逗号分隔的标识符列表 所有枚举类型都隐式地继承System.Enum类型,System.Enum类型是继承自System.ValueType类型唯一不为值类型的引用类型。 CompareTo 将此实例与指定对象进行比较并返回一个对二者的相对值的指示 Equals 指示此实例是否等于指定的对象 Format 根据指定格式将指定枚举类型的指定值转换为其等效的字符串 表示形式 GetName 在指定枚举中检索具有指定值的常数名称 GetNames 检索指定枚举中常数名称的数组 GetTypeCode 返回实例的基础 TypeCode GetUnderlyingType 返回指定枚举基础类型 GetValues 索引指定枚举中常数值的数组 HasFlag 确定当前事例中是否设置了一个或多个位域 IsDefined 返回指定枚举中是否存在具有指定值的常数指示 Parse 将一个或多个枚举常数的名称或数字值的字符串表示转换成等效的枚举对象,一个参数指定该操作是否不区分大小写 TryParse 将一个或多个枚举常数的名称或数字值的字符串表示转换成等效的枚举对象用于指示转换是否成功的返回值 C# 标记枚举(Flags) 枚举类型

Scala 枚举: Enumeration 概述

柔情痞子 提交于 2019-11-27 01:37:44
Spark Scala 枚举 * Java 中的那套枚举并不能直接使用到 Scala 中* Scala 中的枚举使用轻量级 Enumeration 进行实现* Scala 中的枚举其实是一个伴随对象* Scala 中的枚举没有方法重写功能* Scala 中的枚举其实都是 Enumeration.Value 这个对象 和Java和C++不同,Scala并没有枚举类型。不过,Spark标准类库提供了一个 Enumeration类型,可以用于生成枚举,定义一个枚举类的对象,并以Value方法调用枚举中所有可能值,例如: object WeekDay extends Enumeration { val Mon, Tue, Wed, Thu, Fri, Sat, Sun = Value //在这里定义具体的枚举实例 } 这里我们定义了7个字段:Mon, Tue, Wed, Thu, Fri, Sat, Sun,然后用Value将他们初始化,代码还可以如下表述: val Mon = Value val Tue = Value val Wed = Value val Thu = Value val Fri = Value val Sat= Value val Sun = Value 也可以向Value方法传入ID,name,或两个参数都传入 val Mon = Value(0,”meeting”

C# 值类型 与 引用类型

寵の児 提交于 2019-11-27 01:29:27
1、C# 是纯OO语言,Object 是所有类型的根。 2、Object 建立了一个分支ValueType,ValueType继承Object,本身是class,是引用类型。 3、ValueType 是所有值类型的根,值类型包括结构和枚举类型,结构包括BCL的结构(基础类型)和自定义的结构。 4、所有的结构直接继承ValueType,并且是隐式的继承。 4、枚举类型间接继承ValueType,枚举类型直接继承Enum,Enum继承ValueType,Enum是class,是引用类型。也就是说,Enum和枚举类型不是同一个概念,可以认为枚举类型是Enum的子类,隐式继承。 5、引用类型包括类、接口、委托、数组、string等。 6、值类型的使用场景(这里的值类型主要是指结构):小对象,只表现数据,不包含复杂的业务逻辑,不表现抽象和多级别的层次结构。 转载于:https://www.cnblogs.com/nzbbody/archive/2012/01/17/2324897.html 来源: https://blog.csdn.net/weixin_30420305/article/details/99234325

C# 值类型 与 引用类型

故事扮演 提交于 2019-11-27 01:28:26
先看MSDN上对CTS 中的值类型和引用类型之间的关系的介绍: 1、Object是所有类型的根,类型分为:值类型和引用类型。 2、ValueType 是所有值类型的根(结构是隐式继承ValueType),值类型分为:结构和枚举。结构包括:BCL中的结构(也就是基础类型Primitive Type)和自定义的结构。 3、ValueType 继承Object,ValueType本身是个class(引用类型),而ValueType的子类(结构和枚举)都是值类型,ValueType重写了Object的Equals方法,将引用的比较转化为引用内容的比较。 4、所有的值类型都是sealed 转载于:https://www.cnblogs.com/nzbbody/archive/2012/01/10/2318279.html 来源: https://blog.csdn.net/weixin_30214115/article/details/99234361

苹果编程语言Swift简介

a 夏天 提交于 2019-11-26 21:15:40
Swift是什么? Swift是苹果于WWDC 2014发布的编程语言, The Swift Programming Language 的原话: Swift is a new programming language for iOS and OS X apps that builds on the best of C and Objective-C, without the constraints of C compatibility. Swift adopts safe programming patterns and adds modern features to make programming easier, more flexible and more fun. Swift’s clean slate, backed by the mature and much-loved Cocoa and Cocoa Touch frameworks, is an opportunity to imagine how software development works. Swift is the first industrial-quality systems programming language that is as expressive and enjoyable as a