C#中的枚举与结构体

枚举类型

  • 什么是枚举?
    1.枚举类型是⼀个⾃定义类型。
    定义方式:enum 枚举名 { 枚举值1,枚举值2… }
    2.枚举类型是⼀个值类型枚举值还可标记一个整型数字予以匹配,默认从0开始计数
    3.枚举类型的创建
//装备类型 
enum EquipType 
{ 
Helmet = 100,//头盔 
BodyArmor = 200,//防弹⾐ 
Knapsack,//背包 
Knife 
}
  • 枚举类型变量的定义与使⽤
//定义⼀个枚举类型的变量 
EquipType myEquip = EquipType.Knapsack; 
EquipType yourEquip = EquipType.Knapsack; 
//判断枚举变量 
if(myEquip == EquipType.BodyArmor) { } 
switch (myEquip) 
{ 
case EquipType.BodyArmor: 
break; case EquipType.Helmet: 
break; 
case EquipType.Knife: 
break; 
//case EquipType. 
default: 
break; 
} 
//枚举类型和整型之间的转换 
//枚举类型可以强制转换为整型 
int num = (int)myEquip; 
Console.WriteLine(num); 
//整型可以强制转换为枚举类型 
myEquip = (EquipType)200; 
Console.WriteLine(myEquip); 
//既然枚举可以⽤整数去表示 
Console.WriteLine(myEquip+2);

结构体类型

  • 结构体类型是⾃定义类型
    定义方法:struct 结构体名 { 结构体内容 }
    注意:结构体内字段声明不能有初值

  • 结构体类型是值类型

  • 结构体类型的创建:

//学⽣类型 
struct Student 
{ 
public string name; 
public char sex; 
public int age; 
}
  • 结构体类型变量声明及字段赋值(使用点运算(.))
//定义⼀个学⽣变量 
Student xiaoming; 
//学⽣结构内变量赋值 
xiaoming.name = "xiaoming"; 
xiaoming.age = 16; 
xiaoming.sex = 'M';
  • 结构体的构造函数
    1.结构体默认的构造函数,开发者不能创建默认构造(即⽆参构造)
    2.结构体的⾃定义构造函数,⽅便创建结构体变量时给字段赋值
    3.构造函数在结构体内创建;
    4.自定义的构造函数必须给所有的字段进行初始化赋值
//⾃定义构造函数 
public Student(string n,char s,int a) 
{ 
//作⽤:快速给结构体字段赋初值 
//⽽且必须给每⼀个字段都赋初值 
name = n; 
sex = s; 
age = a; 
}

初始化结构体变量

//有了⾃定义的构造函数后,如何新建结构体变量 
Student xiaogang = new Student("xiaogang",'M',18);

好了,C#中的枚举和结构体就简单的说到这里。

下面这个链接可以前往关于枚举和结构体的练习题的页面。
https://blog.csdn.net/maybe_ice/article/details/104365405

有疑问的可以私信博主。
点个关注,给个赞呗!

发布了25 篇原创文章 · 获赞 4 · 访问量 1726

猜你喜欢

转载自blog.csdn.net/maybe_ice/article/details/104365255