1. 变量
1.1 变量需要遵循的规则:
- 变量必须初始化
- 初始化器不能为空
- 初始化器必须放在表达式中
- 不能把初始化器设置为一个对象,除非在初始化器中创建了一个新对象
1.2 变量的作用域
- 只要类在某个作用域内,其字段(也称为成员变量)也在该作用域内
- 局部变量存在于表示声明该变量的块语句或方法结束的右花括号之前的作用域内
- 在for、while或类似语句中声明的局部变量存在于该循环体内
1.3 常量:关键字const
- 必须在声明时初始化
- 不能用从变量中提取的值来初始化常量(如需这样做,应使用只读字段)
- 常量总是隐式静态的,不允许使用static
2.预定义数据类型
- 值类型与引用类型的区别
- C#关键字与.NET类型
3.枚举
枚举是用户定义的整数类型。其在后台会实例化为派生自基类的System.Enum的结构,即在语法上把枚举当成结构不会造成性能损失。实际上,一旦代码编译好,枚举就成为基本类型。
public enum TimeOfDay { Morning = 0, Afternoon = 1, Evening = 2 }
- 检索枚举的字符串表示
TimeOfDay time = TimeOfDay.Afternoon;
WriteLine(time.ToString()); //返回字符串 Afternoon
- 从字符串中获取枚举值
TimeOfDay time2 = (TimeOfDay) Enum.Parse(typeof(TimeOfDay), "afternoon", true);
WriteLine((int) time2); //返回 1
注:Enum.Parse()方法3个参数含义:要使用的枚举类;要转换的字符串;是否忽略大小写。
4. 程序流控制
4.1 条件语句:if、switch
switch语句中case值必须是常量表达式(可用const或枚举),不能使用变量
4.2 循环语句: for、while、do...while、foreach
foreach循环可以迭代集合中的每一项,但不能改变集合中各项的值。如需迭代集合中的各项,并改变它们的值,应使用for。
4.3 跳转语句: goto、break、continue、return
5. 名称空间:一种逻辑组合。它与程序集无关,同一个程序集中可以有不同的名称空间,也可以在不同的程序集中定义同一个名称空间中的类型。
- using用途:(1)在文件顶部采用using + 名称空间,即可在文件中引用名称空间中的类型,采用“.”修饰符;(2) 采用using给类和名称空间指定别名,using 别名=名称空间,在文件中使用“::”修饰符引用名称空间中类型。