一、枚举
枚举是什么(what)
枚举是一组命名整型变量。枚举类型是使用enum关键字声明的,是一些固定范围的值。(C#枚举是值类型,枚举包含自己的值,不能继承或传递继承)
注意:在类上面声明,命名空间下面
枚举的声明语法
public enum<枚举类型名>
{
值1,
值2
};
使用枚举的优点(why)
1、使用方便:用谁点谁就行
2、更规范
3、可以进行类型间强转换:以不同形式输出,每一个符号代表一个整数值,按顺序排列,默认从0开始。
4、节约内存空间:举例:1代表数学,2代表语文,3代表英语。这三个科目都是string类型。但1这三个数字是char类型,char比string占用空间少。
public enum Gender //声明枚举类型 public访问修饰符,有一些固定的范围的值 { 男, 女 } class Program { static void Main(string[] args) { Gender gender = Gender.女; int gender = (int)Gender.女; //enum——>int Gender gender = (Gender )1; //int——>enum string num = gender.ToString(); //string——>enum Gender gender = (Gender)Enum.Parse(typeof(Gender), "女"); //enum——>string Console.WriteLine(num); //显示枚举值 Console.ReadKey(); } }
结构体
概念(what)
它使得一个单一变量可以存储各种数据类型的相关数据。创建用struct关键字
使用结构体的好处(why)
一次声明多个不同类型的变量。为减少需要声明多次不同类型变量的冗余现象,声明一个结构体,里面可以有不同的类型的变量
结构是值类型,结构成员不能指定为abstract、virtual、protected,结构不支持继承
结构体中的字段不能赋予初始值。结构存储在栈中。
声明语句(how) [public] struct 结构名 { 结构体成员 } public enum Gender //声明枚举 { 男, //值 女 } public struct Person //声明结构体 { public string _name; //字段,姓名 ,结构体成员 public Gender _gender; //性别 public int _age; //年龄 } static void Main(string[] args) { Person XDperson; //声明XDperson,类型为Person XDperson._name = "小邓"; XDperson._age = 18; XDperson._gender = Gender.男; Person XJperson; //声明XDperson,类型为Person XJperson._name = "小姜"; XJperson._age = 18; XJperson._gender = Gender.女; Console.WriteLine(XDperson._name); //打印XDperson的信息 Console.WriteLine(XDperson._age ); Console.WriteLine(XDperson._gender); Console.WriteLine(); //打印一行空行 Console.WriteLine(XJperson._name); //打印XDperson的信息 Console.WriteLine(XJperson._age); Console.WriteLine(XJperson._gender); Console.ReadKey(); }