循环结构

需要掌握
1.掌握while循环结构
2.掌握do-while循环结构
3.掌握for循环结构
4.掌握代码调试
5.掌握多重循环

1.while循环

1.1 为什么使用循环?

public class Demo1 {

	public static void main(String[] args) {
		
		// 需求:输出100遍好好学习天天向上
		System.out.println("第1遍 好好学习!天天向上!");
		System.out.println("第2遍 好好学习!天天向上!");
		System.out.println("第3遍 好好学习!天天向上!");
		System.out.println("第4遍 好好学习!天天向上!");
		System.out.println("第5遍 好好学习!天天向上!");
		System.out.println("第6遍 好好学习!天天向上!");
		System.out.println("第7遍 好好学习!天天向上!");
		System.out.println("第8遍 好好学习!天天向上!");
		System.out.println("第9遍 好好学习!天天向上!");
		System.out.println("第10遍 好好学习!天天向上!");
	}
}

使用循环的原因: 因为都是重复性的内容,所以我们需要将实现方案进行简化。

int i = 1;
while(i <= 100){
	System.out.println("第"+i+"遍 好好学习!天天向上!");
	i++;
}

1.2 while循环的使用

1.2.1 循环的四要素

诚然,语法结构是需要记忆的,但是这种步骤记忆过程中有一些规律,于是我们可以将循环
解决问题的过程分为 4 个要素。记住四个要素就能基本保证一个循环的完整。

  1. 初始化循环变量
  2. 循环条件
  3. 循环操作
  4. 循环出口
// 循环条件
while(条件表达式){ // (如果)当条件成立 程序执行..
	// 条件成立....
    // 循环操作
}

在这里插入图片描述
在这里插入图片描述

2.do-while循环

2.1 do-while循环的使用

// do:做...
do{
    // 循环操作
    
    // 循环出口
}while(循环条件);

在这里插入图片描述

2.2 while 和 do-while 的区别

  • 相同点:都可以实现循环结构
  • 不同点:
  • 执行次序:
    • while循环是先判断条件 然后再执行循环
    • do-while循环是先执行循环 然后再判断条件
  • 初始值条件不满足:
    • while循环如果初始值不满足,那么不会执行循环操作
    • do-while循环无论是否满足,都至少会执行一次!

3.for 循环

3.1 为什么使用 for 循环

在循环次数固定的情况下,for 比 while 更简洁。

3.2 for 循环的语法

for 循环的语法要更加简洁,而且非常的灵活,但是上方总结的循环四要素是没有变化的。

for(1初始化循环变量;2循环条件;4循环出口){
    // 3循环操作
}
// 1  2  3  4   2  3  4  2  3  4...

3.3 for 循环的使用

import java.util.Scanner;

/**
 * 循环输入某同学S1考试的五门课成绩,并计算平均分
 * @author Administrator
 *
 */
public class Demo2 {
	public static void main(String[] args) {
		// 创建Scanner对象
		Scanner input = new Scanner(System.in);
		// 输入学生姓名
		System.out.print("请输入学生姓名:");
		String name = input.next();
		
		double sum = 0; // 存储分数之和
		int i = 1; // 初始化循环变量
		// 套用for循环语句
		for(i = 1;i <=5 ;i++) {
			// 循环操作
			// 输入学生成绩
			System.out.print("请输入5门功课中第"+i+"门课的成绩:");
			double score = input.nextDouble();
			 sum += score;
		}
		//计算平均分
		double average = sum / (i-1);
		//输出平均分
		System.out.println("平均分为:"+average);
	}
}

3.4 for 循环的注意事项

  1. for 循环的三大项都可以省略,但是两个;号不能省!省略了三大项之后,就成了死循环

  2. for 循环的初始化变量和循环出口可以编写多个表达式以,号分隔。

  3. for 循环中的初始化变量和循环出口可以单独拿出来,比如为了提升变量作用域。

  4. for 循环只能用于循环次数固定的场景。

4.多重循环

4.1 什么是多重循环

多重循环(嵌套循环)其实就是一个循环体内又包含另一个完整的循环结构。各循环可互相
嵌套,一般不超过三层(因为一般都是 2 层嵌套,故往往称为二重循环),外层循环变量变化
一次,内层循环变量要变化一遍。

4.2 多重循环的语法

int i = 1;
while(i <= 10){
    int j = 1;
    while(j <= 5){
        System.out.println(2);
        j++;
    }
    i++;
}

while(){
    do{
        
    }while();
}

for(){
    while(){
        
    }
    do{
        
    }while();
}
// .....

4.3 多重循环的使用

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.代码调试(debug)

世界没有完美的程序,我们是尽力将我们的程序接近完美。

bug :臭虫

  1. 盯 (读代码,构想代码运行的结果)

  2. 通过输出语句(System.out.println())/日志来打印内容

  3. 通过debug工具

    断点(break point):程序中断(暂停)的位置

    变量表(variables):展示在当前方法内的局部变量(在debug时经常观察它)

    1. 在预测的可能出现问题的位置左侧双击 可以添加断点
    2. 通过debug as 方式运行程序 它会自动运行到断点位置然后暂停 等待你的下一步指令,暂停的这一行目前处于将要执行还未执行的状态。
      1. F6(Step Over) 掌握 表示执行当前行的代码 切换到下一行
      2. F8(Resume) 掌握 快速放行到下一个断点位置(跳过我们不想查看的部分)
      3. F5(Step into) 目前了解 表示进入到要执行的方法内
    3. 观察变量表等信息 发现问题 解决问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值