循环结构
目录
1.程序中的循环
概念:通过某个条件,重复的执行一段逻辑代码。
2.while循环
语法: while(布尔表达式){ //逻辑代码(循环操作) }
执行流程: 先对布尔表达式进行判断,结果为true,则执行逻辑代码。 本次执行完毕后,再次进行判断,结果仍旧为true,则再次执行逻辑代码。 直至布尔表达式的结果为false时,才会退出循环结构,执行后续代码。
//开始条件
int i=1;//从第一条开始
while(i<=100){//结束条件,第100条结束
System.out.println(i+":好好学习,天天向上!");
i++;//更新变量
}
while的特点
特点:首次即有入口条件,先判断、再执行,适用于循环次数明确的情况
3.do while循环
语法: do{ 逻辑代码(循环操作) }while(布尔表达式);
执行流程: 先执行一次循环操作之后,再进行布尔表达式的判断。 如果结果为true,则再次执行循环操作。 如果结果为false,才会退出循环结构,执行后续代码。
Scanner sc=new Scanner(System.in);
// System.out.println("小王抄作业!");
// System.out.println("考试及格了么?n/y");
// String str=sc.next();
// while (str.equals("n")){
// System.out.println("小王抄作业!");
// System.out.println("考试及格了么?n/y");
// str=sc.next();
// }
// System.out.println("及格了,不用抄作业了!");
//do whlie
String str=null;//初始化变量
do{//循环体
System.out.println("小王抄作业!");
System.out.println("考试及格了么?n/y");
str=sc.next();
}while (str.equals("n"));//循环条件
System.out.println("考试及格!");
特点:首次没有入口条件,先执行,再判断。适用于循环次数不明确的情况。
4.for循环
语法: for(初始部分 ; 循环条件 ; 迭代部分){ //循环操作 }
执行流程: 首次执行初始部分(仅一次)。 对布尔表达式进行判断,结果为true,则执行逻辑代码。 本次执行完毕后,执行迭代部分,再次判断,结果仍旧为true,则再次执行逻辑代码。 直至布尔表达式的结果为false时,才会退出循环结构,执行后续代码。
for (int i=1;i<=100;i++){
System.out.println(i+"好好学习,天天向上");
}
5.流程控制
break:终止、跳出switch、循环结构。
//break 结束整个循环
int sum=0;
for (int i=1;i<=10;i++){
if(i==3){
break;
}
sum+=i;
}
System.out.println(sum);
continue:结束本次、进入下一次循环。
//continue:结束本次、进入下一次循环。
int sum1=0;
for (int i=1;i<=10;i++){
if(i==3){
continue;
}
sum1+=i;
}//1+2+4+5+6+7+8+9+10
System.out.println(sum1);
6.嵌套循环
外层循环控制班级数目,内层循环控制每个班级学员数目
package com.sk.day03;
import java.util.Scanner;
/**
* 若有3个班级各4名学员参赛,如何计算每个班级参赛学员的平均分?
*/
public class Dome05 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
for (int j=1;j<=3;j++){
double sum=0;
System.out.println("请输入第"+j+"个班级"+"4为学生成绩:");
for (int i=1;i<=4;i++){
System.out.print("第"+i+"名:");
double score=sc.nextDouble();
sum+=score;
}
System.out.println("第"+j+"个班级的平均分为:"+sum/4);
}
}
}