流程控制语句
学习目标
- 掌握使用 if 和 if ··· else 条件语句
- 理解使用 switch 语句的多项选择
- 使用循环语句 while 反复执行程序中的语句
- 在程序中使用循环语句 do ··· while反复执行语句
- 使用循环语句 for 在语句中反复执行语句
- 使用 break、continue、return 语句控制改变程序流
- 条件语句 if
if 语句的完整格式如下:
if (条件)
{
目的1;
}
else
{
目的2;
}
- 单个语句的形式:
if (条件) 目的1;
else 目的2;
其中目的1和目的2必须是单行语句,否则需要用花括号阔气起来,也就是语句块形式。
- 嵌套 if 语句:
嵌套 if 语句是指该 if 语句为另一个 if 或 else 的对象,例如:
if (condition1)
{
statement1;
}
else if (condition2)
{
statement2;
}
else if (condition3)
{
statement3;
}
else
{
statement4;
}
需要注意的是:一个 else 语句总是对应着和它在同一个块中的最近的 if 语句,并且该 if 语句没有其他 else 语句相关联。
2.Switch 语句
例如 :
switch(<表达式>)
{
case <常量1>:
<语句1>;
break;
case <常量2>:
<语句2>;
break;
...
case<常量n>:
<语句n>;
break;
[default:<语句n+1>;]
}
- switch 后表达式必须是整型、字符型;
- 每个case的常量必须不同
- 若没有break,将继续执行下一个case语句
- default 位置可任意,但要注意break
- 循环语句
3.1 while语句
格式如下:
while (条件表达式)
{
循环体
}
3.2 do while语句
格式如下:
do {
循环体
}while (条件表达式);
while 与 do while的区别在于,do while先执行一遍后,进行条件判断,循环体执行次数至少是1次
而while语句不符合条件判断就不执行循环体
3.3 for 循环
格式如下:
for (赋初值;判断条件;循环控制变量增减方式)
{
循环体
}
Java 循环允许嵌套
4.跳转语句 break、continue和return
4.1 break 语句
1.使用break语句跳出循环:
使用break语句将直接强行退出循环,即循环被终止,程序跳转至循环结束后的语句执行。
2.使用标签break语句实现goto 效果
在Java中是没有goto语句的。在很深的循环嵌套的程序中,Java使用break语句的一种拓展形式来实现goto效果,例如:
break lai;//跳转到lai循环
4.2 continue语句
1.使用continue语句:
可以是先提前进入下一次循环。
2.使用标签的continue语句:
可以实现跳转到嵌套循环中的指定一层循环。
例如:
class ContinueLabel {
public static void main(String args[]) {
lai:for (int i=0; i<10; i++) {
for(int j=0; j<10; j++) {
if(j > i) {
System.out.println();
continue lai;//当j>i时,跳转到lai循环,实现终止j计数效果
}
System.out.print(" " + (i * j));
}
}
System.out.println();
}
}
在本例中的continue语句终止了计数j的循环而继续计数i的下一次循环反复。该程序的输出如下:
0
0 1
0 2 4
0 3 6 9
0 4 8 12 16
0 5 10 15 20 25
0 6 12 18 24 30 36
0 7 14 21 28 35 42 49
0 8 16 24 32 40 48 56 64
0 9 18 27 36 45 54 63 72 81
4.3 return语句
return 语句的两个用途:
- 用来表示一个方法的返回值
- 是该方法退出,并返回返回值