c#基础--枚举类型
2011-12-08 01:42
337 查看
枚举:
定义一种枚举类型并且在定义这种类型时我们要指定该类型的所有值
语法:
enum 类型名称{值1,值2,值3,...,值n}
枚举的定义一般和类定义在同一级别,这样在同一个命名空间下的所有类都可以使用该枚举类型(方法中和类中也可以)
实例:
定义一个枚举类型:
在放方法中使用:
枚举的作用:1.限制用户不能随意赋值,只能在定义枚举时列举的值中选择
2.不需要死记每一个值是什么,只需要选择相应的值
注意:定义枚举类型的时候,值不能为int类型
枚举类型的变量都可以强制转换成一个int类型
枚举的值在定义时是有一个默认值的,默认值从0开始,变量的值永远都是上一个变量的值加1
如:
那么,(int)name.张三 的值为0,(int)name.李四 的值为2,(int)name.王五 的值为1,(int)name.赵六 的值为2 ,(int)name.孙七 的值为3
把字符串转换成枚举类型
(定义的枚举类型)(Enum.Parse(typeof(定义的枚举类型),"待转换的字符串"))
定义一种枚举类型并且在定义这种类型时我们要指定该类型的所有值
语法:
enum 类型名称{值1,值2,值3,...,值n}
枚举的定义一般和类定义在同一级别,这样在同一个命名空间下的所有类都可以使用该枚举类型(方法中和类中也可以)
实例:
定义一个枚举类型:
enum Gender { 男, 女 }
在放方法中使用:
static Void Main(string[] args) { Gender sex; sex = Gender.男; switch(sex) { case Gender.男: Console.WriteLine("男性"); break; case Gender.女: Console.WriteLine("女性"); break; } }
枚举的作用:1.限制用户不能随意赋值,只能在定义枚举时列举的值中选择
2.不需要死记每一个值是什么,只需要选择相应的值
注意:定义枚举类型的时候,值不能为int类型
枚举类型的变量都可以强制转换成一个int类型
枚举的值在定义时是有一个默认值的,默认值从0开始,变量的值永远都是上一个变量的值加1
如:
enum name { 张三, 李四=2, 王五=1, 赵六 孙七 }
那么,(int)name.张三 的值为0,(int)name.李四 的值为2,(int)name.王五 的值为1,(int)name.赵六 的值为2 ,(int)name.孙七 的值为3
把字符串转换成枚举类型
(定义的枚举类型)(Enum.Parse(typeof(定义的枚举类型),"待转换的字符串"))
相关文章推荐
- C#语言学习--基础部分(十三)枚举类型和结构体
- 【1】C#基础:数据类型、运算、随机、枚举、结构、数组、列表、文件和文件流、序列化、MD5
- C#语言学习--基础部分(十四)枚举类型和结构体(续)
- 追着嘟嘟学c#系列基础第一篇-----c#枚举类型【蓝鸥出品】
- C#基础学习笔记--数据类型,值类型,结构类型,枚举类型
- C#基础精华02(静态类,值类型,引用类型,枚举,结构,ref与out)
- C#基础精华02(静态类,值类型,引用类型,枚举,结构,ref与out)
- c#基础笔记(1) 枚举
- C# 类型基础(摘抄)
- c# 枚举基础有[flags]和没有的的区别
- C#中的枚举类型,原来有这么多用法
- C# 类型基础
- C#基础-----索引器,静态类,值类型和引用类型
- 【C#代码】字符串类型转换成枚举类型
- Rust语言开发基础(九)复杂数据类型:结构体,枚举,泛型
- 带着问题读CLR via C#(二)类型基础
- C#基础--之数据类型
- C#中使用泛型对照使用通用基础类型效率减少近一倍
- 20151024_001_C#基础知识(静态与非静态的区别,值类型和引用类型,堆和栈的区别,字符串的不可变性,命名空间)
- c# (ENUM)枚举组合类型的谷歌序列化Protobuf