枚举
枚举的定义
枚举:一一列举,吧要取的值列举出来,然后从里面选择合适的值
//enum 是关键字,用来定义一个枚举类型,后面跟类型名
enum 枚举名
{
枚举值1,
枚举值2,
枚举值N
}
例:================================================
enum Sex
{
男,女
}
枚举的使用
//给枚举变量赋值时要使用枚举类型名+点 运算符选择要取的值
例:
Sex s = Sex.男;
枚举的练习
//在控制台输入1,打印春天,输入2打印夏天,输入3打印秋天,输入4打印冬天
enum 季节
{
//枚举有自注释的作用
//枚举里面所列举出来的值,都对应一个默认的整数,第一哥枚举值默认为0,后面的枚举值向后依次加1
//类型和int类型之间进行强制转换,使用强制类型转换符可以认为的修改枚举值所队形的整数值
春天=1,
夏天,
秋天,
冬天
}
=================================================
int num = Convert.ToInt32(Console.ReadLine());
//定义 季节 类型的 jijie 等于 强制转换类型后的num
季节 jijie = (季节)num;
switch (jijie)
{
case 季节.春天:
break;
case 季节.夏天:
break;
case 季节.秋天:
break;
case 季节.冬天:
break;
default:
Console.WriteLine("没有该季节");
break;
}
运行结果
结构体
结构体的定义
//结构体就好比一个自定义的数据类型
//结构体相当于一个符合容器,可以存储多种类型的数据
struct
}
访问修饰符 类型名 成员名称;
访问修饰符 类型名 成员名称;
访问修饰符 类型名 成员名称;
...
访问修饰符 类型名 成员名称;
}
例:==================================================
public struct Student
{
public String name;
public int age;
public String StudentNumber;
}
结构体的使用
//定义一个结构体
struct PersonInfo
{
//类或者结构体里面的变量成为字段,或者成员变量
//public为访问修饰符,其修饰符的变量是公有的,在类或者结构体
//的外部可以访问
public string name;
public int age;
public Sex sex;
public string address;
}
===================================================================
//定义张珊
PersonInfo zhangsan;
zhangsan.name = "张珊";
zhangsan.age = 21;
zhangsan.address = "女儿国";
//这个性别是上面枚举里面定义的
zhangsan.sex = Sex.女;
// 定义李斯
PersonInfo lisi;
lisi.name = "李斯";
lisi.age = 1500;
lisi.address = "秦朝";
lisi.sex = Sex.男;
//结构体作为一个整体不能够直接参与运算,只能把其成员参与运算
Console.WriteLine("姓名{0},性别{1},年龄{2},地址{3}", lisi.name, lisi.sex, lisi.age, lisi.address);
//由于zhangsan和lisi两个变量类型一样,故可以吧二者放到数组里面统一进行处理
PersonInfo[] infos = { zhangsan, lisi };
for (int i = 0; i < infos.Length; i++)
{
Console.WriteLine("姓名{0},性别{1},年龄{2},地址{3}", infos[i].name, infos[i].sex, infos[i].age, infos[i].address);
}
访问修饰符
//private 是私有的,用在类或者结构体的前面,该成员不能够在类或者结构体外面被访问到
//public表示公有的,在类或者结构体的外面,访问不受限制,类或者结构体的成员不加任何访问修饰符,该成员默认是私有的