枚举
表示类型,枚举是自定义类型
enum 枚举名{枚举值1,枚举值2,枚举值3}枚举类型名.枚举值
枚举是一个值类型,枚举值还可标记一个整型数字予以匹配,默认从0开始计数
举个例子
//创建枚举表示游戏的所有状态(1表示开始游戏,2表示暂停游戏,0表示结束游戏)//懒得查英文了 用的拼音 0.0 哈哈enum ZhuangTai{kaiShiYouXi,ZanTingYouXi,JieShuYouXi}static void Main(string[] args){ZhuangTai zhuangTai = ZhuangTai.JieShuYouXi;WuQi wuQi = WuQi.BuQiang;}
结构体
struct 结构体名{结构体内容}
结构体是值类型 使用点运算(.)
structStudent{publicstringname;publiccharsex;publicintage;publicstringschool;publicstringphoneNumber;}//注意在 student这个结构体里不能赋初值static void Main(string[] args){Studentxiaoming;xiaoming.name=\"xiaoming\";xiaoming.sex=\'M\';xiaoming.age=15;xiaoming.school=\"北京四中\";xiaoming.phoneNumber=\"13901234567\";}
结构体的构造函数
首先要知道为啥要有构造函数 ,构造函数是解决,上面这种小例子这种问题的,这还只是五个,如果五十个呢? 所以有了构造函数
构造函数是没有返回值的
public Student(各种参数){//Student要和结构体的名一样this.什么什么(这个带this的取得是构造函数上面的) = 什么什么(没有this的,取得是参数,取最近的)}//一般你不写构造函数,系统会有一个默认的构造函数//在调用是要一个一个去写Student xiaomei = new Student();xiaomei.name = \"\";......//但是如果自己写了构造函数Student xiaogang = new Student(\"xiaogang\",\"M\",16, ......)
访问修饰符
这个就是限制程序员自己的。简单点可以理解为,写了一个方法然后可以被哪些地方访问
程序集 public 公有的 所有地方都可以用,跨程序集 需要先using程序集 private 私有的 只有在同一个类,同一个结构体中 才有用...... protected 受保护的 比private多一个子类也能调用命名空间命名空间......结构体方法方法......类类方法方法......派生类(子类)方法
数组
数组是用来存储相同数据类型的构造类型
注意:只能存储相同的数据类型 比如我要存三个int 可以 不能三个不同的数据类型
数据类型[] 数组名int[] age;动态初始化数据类型[] 数组名 = new 数据类型[数组长度];例:int[] intArray = new int[6];【数组元素为默认值】数据类型[] 数组名 = new 数据类型[数组长度]{元素1,元素2};例: int[] intArray = new int[3]{1,2,3}; 或例: int[] intArray = new int[]{1,2,3};Int[] intArray = new[]{1,2,3};静态初始化数据类型[] 数组名 = {元素1,元素2,…,元素n};例: int[] myArr = {1,2,3,4,5};注意:在这种情况下,不能将数组定义和静态初始化分开