合规国际互联网加速 OSASE为企业客户提供高速稳定SD-WAN国际加速解决方案。 广告
## 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 = "王二麻子",这是三元运算符的叠加使用 } ```