流程控制
1. break关键字
应用场景
????????break只能应用于
while
循环、
do-while
循环、
for
循环和
switch
选择结构
作用
- break 应用在循环结构中时,表示终止 break 所在的循环,执行循环结构下面的代码,通常与 if 选择结构配合使用
- break 应用在 switch 选择结构时,表示终止 break 所在的 switch 选择结构
案例
????????获取一个10
以内的随机整数,然后从控制台输入一个整数,如果输入的整数与随机整数不相等,则重新输入,直到输入的整数与随机整数相等为止
代码实现
public static
void
main
(
String
[]
args
) {
????????//Math.random(); 表示的意思是随机获取一个
0~1
之间的随机浮点数,能够取到
0
,但是
取不到
1
????????//[0,1)
????????double
random
=
Math
.
random
();
// [0,1)
浮点数
????????// int number = (int)(random * 10); //[0, 10)浮点数
????????double
number
=
random
*
10
;
//[0, 10)
浮点数
????????//[10,20) random * 10 + 10
????????int
randomNumber
=
(
int
)
number
;
????????Scanner sc
=
new
Scanner
(
System
.
in
);
????????// int inputNumber; //定义循环变量,没有赋初值
????????// do{
????????????????// System.out.println("请输入一个0~10
之间的整数:
");
????????????????// inputNumber = sc.nextInt();
????????// }while (randomNumber != inputNumber);
????????while
(
true
){
//
死循环
????????????????System
.
out
.
println
(
"
请输入一个
0~10
之间的整数:
"
);
????????????????int
inputNumber
=
sc
.
nextInt
();
????????????????if
(
randomNumber
==
inputNumber
){
????????????????????????break
;
//
循环中使用
break
表示终止
break
所在的循环
????????????????}
????????}
}
练习
????????从控制台输入一个数字,判断该数字是否是素数(素数的特征:只能被1
和本身整除,如素数
3
只能被
1和3
整除)。要求使用
break
实现
2. continue关键字
应用场景
????????continue只能应用在循环结构中(
while
循环、
do-while
循环和
for
循环)
作用
????????表示跳过本次循环,进入下一次循环,通常与if
选择结构配合使用
案例
????????打印1~10
之间的所有偶数
代码实现
public static
void
main
(
String
[]
args
) {
????????for
(
int
i
=
1
;
i
<=
10
;
i
++
){
????????????????// if(i % 2 == 0){
????????????????????????// System.out.println(i);
????????????????// }
????????//当
i
是奇数时,跳过本次循环,直接进入下一次循环
????????????????if
(
i
%
2
==
1
)
continue
;
//
如果
if
语句后面只有一条语句,那么
{}
可以省略
????????????????????????System
.
out
.
println
(
i
);
????????????????}
????????int
m
=
1
;
????????while
(
m
<=
10
){
????????????????if
(
m
%
2
==
1
) {
????????????????????????m
++
;
????????????????????????continue
;
????????????????}
????????????????System
.
out
.
println
(
m
);
????????????????m
++
;
????????}
}
练习
从控制台录入一位学生的成绩,如果成绩低于
60
分,则将输入的成绩加
5
分,知道成绩及格为止。要求
使用
continue
实现。
public static
void
main
(
String
[]
args
) {
????????Scanner sc
=
new
Scanner
(
System
.
in
);
????????System
.
out
.
println
(
"
请输入学生成绩:
"
);
????????int
score
=
sc
.
nextInt
();
????????if
(
score
<
60
){
????????????????while
(
true
){
????????????????????????score
+=
5
;
????????????????????????if
(
score
<
60
)
continue
;
????????????????????????else break
;
????????????????}
????????}
}