## if语句
~~~
void Main(){
bool isRight = false;
if(isRight){
Echo("对的");
}
else{
Echo("错的");
}
//执行结果会显示"错的"
}
~~~
这个语法的标准结构是
~~~
if(bool){
}
else if(bool){
}
else{
}
~~~
其实你可以把它看做一个函数,需要传入一个bool类型参数。如果bool值为true,就执行if里的代码,如果为false就不执行。
>[danger] 1. if可以单独存在,不依赖else if和else
>2. 如果需要else,else必须紧跟if的大括号,中间不可以插入其他代码,但可以插入换行或注释
>3. if和else之间可以插入else if,进行多重判断。**必须注意,只有当if判断失败,才会做后续的else if或else判断,如果if判断成功,就算后面的else if也成功,仍然不会执行。相当于这中间任何一项只要判断成功,程序就会运行该段{}中的代码后直接跳出这个关联结构体。**
~~~
int a = 10;
if(a <= 5){
Echo("a小于或等于5");
}
else if(a <= 10){
Echo("a小于或等于10");
}
else{
Echo("a大于10");
}
//结果只会显示"a小于或等于5"
~~~
if是可以看做函数的,但它是一个特殊的基本函数。你可以在if里继续写if
~~~
int a = 10;
if(a <= 5){
Echo("a小于或等于5");
if(a <= 10){
Echo("a同时也小于或等于10");
}
}
//结果会显示"a小于或等于5 a同时也小于或等于10"
~~~
我强调了三遍,你可以把if看做函数,而且是一个void类型的空函数。如果你真的理解了这句话,就真正明白了它的()该怎么使用。if所接收的参数是**1个bool类型**。它只接收一个参数,而且只接收bool类型。
>[danger] 这不是巧了吗,上一节我们讲了运算符,运算符刚好返回bool类型的值。
>所以,运算符和if是互相依存的,在使用的时候,我们可以通过灵活的使用运算符来配合if
~~~
void Main(){
if(1 == 1 &&
4 <= 5 &&
(2 + 5)*3 == 30
){
Echo("你好呀");
}
}
~~~
说到这里,有一种三元运算符可以简单介绍一下:
```
void Main(){
int a = 10;
string Name = "";
if(a < 10){
Name = "张三";
}else{
Name = "李四";
}
Echo(Name); //此时输出 "李四"
//但是这个写法很麻烦,所以可以使用三元运算符
Name = (a < 10 ? "张三" : "李四"); //这和上面的写法效果是一样的
Name = (a < 10 ? "张三" : (a > 10 ? "李四" : "王二麻子")); //此时Name = "王二麻子",这是三元运算符的叠加使用
}
```
- 序言
- 写在前面的话
- 太空工程师
- 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