控制执行流程
[TOC]
控制执行流程
true和false
所有条件语句都利用条件表达式的真或假来决定执行路径。
if-else
if-else语句是控制程序流程的最基本形式。其中的else是可选的。
if (Boolean-expression)
Statement
// or
if (Boolean-expression)
Statement
else
Statement
// or
if (Boolean-expression)
Statement
else if (Boolean-expression)
Statement
else
Statement布尔表达式必须产生一个布尔结果,statement指用分号结尾的简单语句,或复合语句。
迭代
while、do-while、for用来控制循环,有时将它们划分为迭代语句。语句会重复执行,知道起控制作用的布尔表达式得到“假“的结果为止。
while
do-while
do-while中的语句至少会执行一次。
for
逗号操作符
逗号操作符和逗号分隔符是不同的,逗号分隔符用来分隔函数的不同参数。Java里唯一用到逗号操作符的地方就是for循环的控制表达式。在控制表达式的初始化和步进控制部分,可以使用一系列由逗号分隔的语句,而且那些语句均会被独立执行。
通过逗号操作符,可以在for语句内定义多个变量,但是它们必须具有相同的类型。
foreach语法
Java SE5引入了一种新的更加简洁的for语法用于数组和容器。
foreach还可以用于任何Iterable对象。
return
Java中有多个关键字表示无条件分支,它们只是表示这个分支无需任何测试即可发生。这些关键词包括return、break、continue和一种与其他语言中的goto类似的跳转到标号语句的方式。
break和continue
在任何迭代语句的主体部分,都可用break和continue控制循环的流程。
默认情况下,break和continue控制最内层循环,可以使用标签来控制外层循环。
标签是后面跟有冒号的标识符,比如:lable1: 。
在Java中,标签起作用的唯一的地方刚好是在迭代语句之前。
规则:
一般的cotinue会退回最内层循环的开头,并继续执行
带标签的continue会到达标签的位置,并重新进入紧接在那个标签后面的循环
一般的break会中断并跳出当前循环
带标签的break会中断并跳出标签所指的循环
在Java里需要使用标签的唯一理由就是因为有循环嵌套存在,并且想从多层嵌套中break或continue。
switch
switch有时也被划分为一种选择语句。
若省略case后的break,则会继续执行后面的case语句,直到遇到一个break为止。
enum可以和switch协调工作。
case语句能够堆叠在一起,为一段代码形成多重匹配。
switch支持匹配的6中类型:
byte
short
char
int
enum(Java SE5)
String(Java SE7)
最后更新于
这有帮助吗?