这一章讲述了流程控制中的分支结构-if条件选择结构。
if条件的语义是如果什么就什么,是条件判断语句,也是最简单的条件判断方式。还有其他两种条件判断方式,分别是if-else if,if-else语句。
- if-else if
If-else if 用来判断多个条件情况的流程选择情况,举例说,如下图所示:
该程序中,我们分别有500,100,50,10的分界线,通过if-else if 语句能够让我们分别执行不同条件情况下对应的输出语句,从而能够在一定程度上分开执行对应的执行语句。
- if-else
If-else和if-else if有相同点,就是能够区分情况执行相应的语句。也有不同点,if-else只能区分两种情况。语义是“如果什么就怎么样,否则就怎么样”。该结构的特点是相对简洁,但是缺点也是很明显的,就是只能有两种情况,如下是图示:
- if-else与if-else if 的混合
当然,鉴于以上特点,我们还可以混合if-else和if-else if 来执行相应的语句,从而提高代码的健壮性,如下图所示:
- if语句嵌套
我们不仅能够平行地运用条件语句,我们还能够进行内部嵌套,从而丰富我们的条件维度。不过课本上没有提到一个开发过程中很重要的关键点:嵌套不要多于三层,否则第一影响代码的可读性,第二影响后期维护效率。(这个课本还是相对比较弱啊~)还是上代码,如下图所示:
- if条件语句的特点
If条件语句还有一个特点是如果满足条件,则执行该条件情况下的语句,并且结束该条件结构,意味着只要进入该条件执行该条件下的语句,则无法执行往后的语句。还是上代码:
我们看到以上两张图中框住的部分调换了顺序,下图调换了顺序后,会导致money >= 50该执行语句无法再执行了,这也是if条件语句的特点。提前说一句,该特点仅用于if条件语句,不适用于所有的流程控制语句,比如下一章要说的switch-case结构,它只要满足条件,往后的条件也会顺带执行了,在开发中为了不影响条件的执行,也可以在执行语句执行后添加一个break用于中止条件语句的执行。
总的来说,该章主要讲了if条件语句的三种形式(if,if-else,if-else if-else),嵌套if条件以及if条件语句的特点。该章还是比较简单,可以写的信息也不是很多,大概就介绍这么多吧。