一、循环的理解
1. 理解:通过某个条件,重复并且有规律的执行一段代码
2. 循环的组成部分:循环变量的初始化、循环条件、循环变量的改变、循环体
3. 循环分类:while循环、do...while循环、for循环
二、while循环
1. 语法:
// 循环变量的初始化
while(循环条件){
// 循环体(重复执行的功能代码)
// 循环变量的改变
}
2. 执行原理:
先执行循环的初始化,接着判断循环条件,如果条件满足-结果为true,执行{}中循环体,从而执行
循环变量改变,再次判断循环条件,如果满足-结果为true,执行{}中循环体,从而执行循环变量的改变,再次判断循环条件...执行循环条件不满足,结果为false,终止、结束整个循环结构,继续执
行后续代码....
3. 特点:
(1) 先判断,再执行,执行次数 0~n次
(2) 如果循环的控制不合理,可能出现死循环
三、do..while循环
1. 语法:
// 循环变量的初始化
do{
// 循环体
// 循环变量的改变
}while(循环条件); // 分号不能省略
2. 执行原理:
先执行循环变量的初始化,接着执行循环体,同时循环变量改变,然后判断循环条件,条件满足,则再次执行循环体,循环变量的改变,再次的判断循环条件...直到循环条件不满足,结果为false,
终止、跳出循环结构
3. 特点:先执行,再判断,执行的次数为:0~n次
package execute;
import java.util.Scanner;
class A{
public static void main(String[]args){
//打印输出10 遍Helloworld
int count = 1;
do{
System.out.println("Helloworld");
count++;
}while(count<=10);
System.out.println("-------------------");
//打印1000遍自己的姓名
int x=1;
do{
System.out.println("ljq");
x++;
}while(x<=1000);
System.out.println("-------------------");
Scanner sc = new Scanner(System.in);
char n;
do{
System.out.println("作业检查中");
System.out.println("输入作业检查结果:y/Y通过,非y代表不通过");
n= sc.next().charAt(0);
}while(n!='y'&&n!='Y');
System.out.println("恭喜作业通过");
}
}
四、for循环【开发应用重点】
1. 语法:
for(循环变量的初始化;循环条件;循环变量的改变){
// 循环体
}
2. 执行原理:
![80e1b564996b4e62911d0e1a0f51109c.png](https://img-blog.csdnimg.cn/direct/80e1b564996b4e62911d0e1a0f51109c.png)
3. 特点:
(1) 先判断,再执行,执行的次数为0~n次
(2) 循环变量的初始化代码可以定义在for上面,此时循环变量的作用范围扩大了,不建议
(3) 循环条件没有,则默认为 true
循环的总结:
while循环和for循环特定:先判断,再执行do..while循环:先执行,再判断
后期开发:
while循环:当循环次数不确定时,建议使用while循环
for循环:当循环的次数明确时,建议使用for循环
package execute;
import java.util.Scanner;
class A{
public static void main(String[]args){
Scanner sc = new Scanner(System.in);
System.out.println("输入一个正整数:");
int n = sc.nextInt();
int x=0;
for(;0<n&&n<10000;n--){
if(n%3==0&&n%7!=0){
x=x+n;
}
}
System.out.println(x);
}
}
五、循环的控制语句
1. break:终止、结束当前循环;可以应用在 switch..case中,用于防止case穿透
2. continue:中止、结束本次循环,从而进入下一次循环
package execute;
import java.util.Scanner;
class A{
public static void main(String[]args){
//1.
int sum=0;
for(int i=1;i<=200;i++){
if(sum>500){break;}
sum+=i;
}
System.out.println(sum);
//2.
System.out.println("-------------------------------");
for(int i=200;i<=300;i++){
if(i%7==0){continue;}
System.out.println(i);
}
}
}
六、循环的嵌套
1. 理解:在循环结构中,定义完整的循环结构
2. 循环嵌套时,循环次数:外层循环次数*内层循环次数
3. 循环控制语句应用循环嵌套中:
break:终止、结束本层循环
continue:中止、结束本层的本次循环,从而进入本层下一次循环
4. 利用循环打印图形:通常使用外层循环控制行,内层循环控制列