表达式的定义
- 什么是表达式
表达式是一种专门求值的语法实体 - C#对表达式的定义
由一个和多个操作数和零个或多个操作符组成的序列,获得多种返回值 - 算法逻辑的最基本(最小)的单元,表达一定的算法意图
- 因为操作符有优先级,所以表达式也有优先级
语句
- 声明语句
- 表达式语句
- 块语句(简称“块”)
- 选择(判断,分支)语句
- 迭代(循环)语句
- 跳转语句
- try…catch…finally语句
- using语句
- yield语句
- checked/unchecked语句
- lock语句(用于多线程)
- 标签语句
- 空语句
- 声明语句
-
局部变量声明
数据类型 标识符int a
数据类型 标识符 = 本地变量初始化器int a = 10; int[] x = new []{1, 2, 3}
一组变量声明器int a, b, c;
-
局部常量声明
const 标识符 = 初始化const x = 1
- 表达式语句–由此计算出来的值会被丢弃,不允许只计算一个值的语句存在
- 调用表达式
defalt()
- 对象创建表达式
new Form()
- 赋值语句
x = 1
- 自增(减)表达式
++x
- 块语句—用于在只允许使用单个语句的上下文编写多条语句
{ 多条语句; }
int x = 100
{
Console.WriteLine(x);
int y = 200;
Console.WritrLine(y);
}
Console.WriteLine(y);
//第二个输出 y 语句报错
//块语句内定义变量在块语句之外不能使用
//块语句是 y 的作用域
- 选择语句
- if语句
if (条件1) 嵌入语句1; else if(条件2) 嵌入语句2; …else 嵌入语句n; - switch语句
switch 内的表达式只能是以下类型
int x;
switch(x)
{
case 1:
Console.WriteLine("A");
break;
case 2;
Console.WriteLine("B");
defalt:
Console.WriteLine("C");
break;
}
-
try语句—用于捕捉块运行期间发生的异常
-
check语句—用于程序运行报错获得错误信息
-
迭代语句—迭代语句重复执行嵌入语句
- while语句
while (循环条件) 嵌入循环语句; - for语句
for(初始变量; 循环条件; 循环结束语句) 嵌入循环语句; - foreach语句
foreach (数据类型 变量 in 集合)
int[] intArray = int[]{1, 2, 3}
foreach(var item in intArray)
{
Console.WriteLine(item);
}
- do语句
do 嵌入循环语句; while(循环条件)
IEnumerator
所有继承了 IEnumerator 的集合都可以被遍历, 并且使用 GetEnumerator 获取迭代器
IEnumerator 有三个方法
object Current{get;} 返回当前当前所指的元素
bool MoveNext(); 如果当前所指的有元素,则返回True, 否则返回False
void Reset(); 重置迭代前指向首位
int[] intArray = new int[]{1, 2, 3, 4};
IEnumerator enumerator = inArray.GetEnumerator();
while(enumerator.MoveNext)
{
Console.WriteLine(enumerator.Current);
}
enumerator.Reset();
- 跳转语句—跳转语句用于无条件的转移控制
- break语句:跳出当前循环
- continue语句:跳过当前循环进入下一个循环的判断
- goto语句:跳转语句
- return语句:退出当前函数并 返回值
- throw语句
- Yield语句
- lock语句
- using语句
- 标签语句
- 空语句