## for 语句
### 一、数组
for和if类似,是一种基本语句。也是用得最多的。
讲解for之前,我们先介绍另一个基本变量类型,[数组](http://www.runoob.com/csharp/csharp-array.html)。
~~~
void Main(){
int[] a = [1, 2, 3, 4, 5];
for(int i = 0; i < a.Length; i ++){
Echo(a[i].ToString());
}
//结果显示1 2 3 4 5
}
~~~
数组通常也是基本类型的集合,正如你看到的。它储存了多个同类型的值。
当你需要访问数组的某个元素的时候,你可以用
~~~
int[] a = [1, 2, 3, 4];
Echo(a[0].ToString()); //显示1
~~~
元素在数组中的序号,可以成为键。键是从0开始的。当你访问数组的时候,如果你点名访问一个它不里头不存在的键,程序可以编译通过,但会在执行时报错。**这是必须要避免的。**
例如:
~~~
int[] a = [1, 2, 3, 4];
Echo(a[4].ToString()); // 程序编译通过,但执行到这一行时报错中断。
~~~
### 二、for语句
[你可以在这查看详细内容](http://www.runoob.com/csharp/csharp-for-loop.html)
~~~
void Main(){
for(int i = 0; i < 5; i += 1){
Echo(i.ToString());
}
//结果显示 0 1 2 3 4
}
~~~
>[danger] 在for的()中,必须写三项内容,三项内容之间用 ; 分隔。{}中写你需要的代码
>1. 第一项写初始条件,这里我们创建了一个作用域仅限于for中的局部变量 int i = 0
>2. 第二项写结束判据,实际上是写一个bool类型,当这里为true时,循环继续;为false时循环终止,开始执行for(){}之后的其他语句。
>3. 第三项写每执行一次循环结束后,需要改变的内容,这里写的是让 i 增加1
可以预料到,最开始i=0,程序先判断i是否小于5,结果是true,所以执行了一遍for的{}里的代码,然后让i增加1。
此时进入第二次循环,此时的i=1,程序先判断i是否小于5,结果还是true,又执行了一遍{}里的代码,然后让i增加1。
反复上述过程,直到i小于5判断为false,程序跳出for循环。
其实对for语句的应用很灵活,只要你真的理解了这三项所要求的东西,你甚至可以把它玩出花来。
>[info] 死循环是什么?
>就是有些人疏忽大意,导致for循环的第二项判据永远无法得到false的结果,导致程序永远在for循环中无法跳出。这是必须要注意的。
- 序言
- 写在前面的话
- 太空工程师
- MEA小组
- 一、入门
- 1.1 基础概念
- 1.2 编程工具
- 1.3 变量
- 1.4 函数 Function
- 1.5 基本语法
- 1.5.1 运算符
- 1.5.2 if
- 1.5.3 for
- 1.5.4 其他语法
- 1.3 类 Class
- 二、编程块
- 2.1 方块的概念
- 2.2 List<T>结构
- 2.3 获取方块
- 2.4 方块的使用
- 三、Ship 类
- 3.1 简介
- Ship v0.5
- 代码
- 手册(待更新)
- 例子(待更新)
- Ship v1.0
- 代码
- 例子
- 文档
- 实例化
- 内置变量
- 内置方法
- Target类
- 四、运动控制算法在SE中的应用
- 4.1 运动控制介绍
- 4.2 过程控制
- 4.3 震荡和动态误差
- 4.4 误差累加方案
- 4.5 PID算法
- 4.6 对PID算法的一点点简化
- 4.7 一阶惯性系统的PID算法优化的研究
- 五、MEA方块类
- 5.0 核心代码目录
- v1.0核心代码
- v1.1 核心代码
- v2.0 核心代码
- 5.1 类的概念
- 5.2 MEA的方块类(Block)
- 5.3 方块类文档
- 5.4 方块类2.0 全教程
- 5.4.1 安装和使用
- 5.4.2 方块类(Block)
- 5.4.3 显示屏类(DisplayScreen)
- 5.4.4 LCD类(LCD)
- 5.4.5 主控座椅类(Cockpit)
- 六、疯猴的编程笔记
- 第一个程序
- 获取和控制其他块
- 物流与生产
- 界面与通信
- 运动与姿态
- 侦测与导航
- 七、SteamZhou的笔记
- 有趣而花里胡哨的IDEA
- 八、质子对撞炮的笔记
- 属性 Property
- 接口 interface