第4章 控制执行流程

1. true和false

所有条件语句都利用条件表达式得真或假来决定执行路径。

2. if-else

3. 迭代

whiledo-whilefor
while和do-while唯一的区别就是do-while中得语句至少会执行一次
for循环的格式:

for(initialization; Boolean-expression; step)
   statement

逗号操作符(在for循环的括号内会用到)

4. Foreach语法

Java SE5开始引入更简洁的for语法,用于数组和容器
foreach可以用于任何Iterable对象,不仅在录入代码片段时可以节省时间,更重要的是,阅读起来也要容易得多

5. retrun

6. break和continue

break用于强行跳出当前循环,不执行循环中剩余的语句
而continue则停止执行当前的迭代,然后退出循环起始处,开始下一次迭代

7. goto

Java中会使用label来完成一些跳转操作
标签label是后面跟有冒号的标识符,就像:

label1:
outer-iteration {
  inner-iteration {
    //...
    break;
    //...
    continue;
    //...
    continue label1; // continue label1同时中断两层迭代,直接转到label1处;随后继续迭代过程,但却从外部迭***始
    //...
    break label1; // break label1中断两层迭代,并回到label1处,但并不重新进入迭代
  }
}

在Java中,标签起作用的唯一的地方刚好是在迭代语句之前。
break和continue关键词通常只中断当前循环,但若随标签一起使用,就会中断循环,直到标签所在的地方。
要记住的重点是:在Java里需要使用标签的唯一理由就是因为由循环嵌套存在,而且想从多层嵌套中break或continue

8. switch

传统方式中,每个case会以一个break结尾,这样可使执行流程跳转至switch主体的末尾。这是可选的,若省略break,则会继续执行后面的case语句,直到遇到一个break为止。

switch语句是实现多路选择的一种干净利落的方法。但它要求使用一个选择因子,而且必须是int或者char那样的整数值。而enum也可以和switch协调工作。