Java特殊的流程控制语句
Java特殊的流程控制语句
一、break语句
1.作用
在switch中使用,表示跳出整个switch分支
在循环中使用,表示跳出整个循环(结束循环的意思)
2.案例
循环录入同学5门课的成绩并计算平均分,
如果某分数录入为负,停止录入并提示。
import java.util.Scanner;
public class 文件名{
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
//输入状态(true-正常输入 false-输入异常)
boolean flag = true;
double sum = 0;
for(int i = 1;i<=5;i++){
System.out.println("请输入第" + i + "门成绩:");
double score = scan.nextDouble();
//判断分数是否为负数
if(score < 0){
flag = false;
break;
}
sum += score;
}
if(flag){
double avg = sum/5;
System.out.println("平均分为:" + avg);
}else{
System.out.println("输入的成绩为负数,停止录入");
}
}
}
二、continue语句
1.作用
在循环中使用,表示跳过循环体剩余的部分
2.案例:循环录入5名Java课学生的成绩,统计分数大于等于 80分的学生比例。
解决方案1:
import java.util.Scanner;
public class 文件名{
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
int count = 0;//记录大于等于80分学生的人数
for(int i = 1;i<=5;i++){
System.out.println("请输入第" + i + "名学生的成绩:");
double score = scan.nextDouble();
if(score >= 80){
count++;
}
}
System.out.println("大于等于80分学生的比例为:" + (count/5.0*100) + "%");
}
}
解决方案2:
import java.util.Scanner;
public class 文件名{
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
int count = 0;//记录大于等于80分学生的人数
for(int i = 1;i<=5;i++){
System.out.println("请输入第" + i + "名学生的成绩:");
double score = scan.nextDouble();
if(score < 80){
continue;
}
count++;
}
System.out.println("大于等于80分学生的比例为:" + (count/5.0*100) + "%");
}
}
三、return语句
1.作用
在方法中使用,表示结束当前方法
2.案例
public class 文件名{
public static void main(String[] args){
System.out.println("111");
System.out.println("222");
if(true){
return;
}
System.out.println("333");
System.out.println("444");
}
}
}
四、lable语句
1.作用
给循环做标记(给循环取名字)
2.经典面试题
以下代码会报错吗?
http://www.baidu.com
for(int i = 0;i<5;i++){
System.out.println("用良心做教育");
}
答:代码不会报错(考点lable)
3.案例
public class 文件名{
public static void main(String[] args){
a:for(int i = 1;i<=5;i++){
for(int j = 1;j<=3;j++){
System.out.println(i + " -- " + j);
if(i == 3){
//外层循环到第3次
break a;//在内层循环中跳出外层循环
}
}
}
}
}
还没有评论,来说两句吧...