需要掌握:
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 个要素。记住四个要素就能基本保证一个循环的完整。
- 初始化循环变量
- 循环条件
- 循环操作
- 循环出口
// 循环条件
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 循环的注意事项
-
for 循环的三大项都可以省略,但是两个;号不能省!省略了三大项之后,就成了死循环
-
for 循环的初始化变量和循环出口可以编写多个表达式以,号分隔。
-
for 循环中的初始化变量和循环出口可以单独拿出来,比如为了提升变量作用域。
-
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 :臭虫
-
盯 (读代码,构想代码运行的结果)
-
通过输出语句(System.out.println())/日志来打印内容
-
通过debug工具
断点(break point):程序中断(暂停)的位置
变量表(variables):展示在当前方法内的局部变量(在debug时经常观察它)
- 在预测的可能出现问题的位置左侧双击 可以添加断点
- 通过debug as 方式运行程序 它会自动运行到断点位置然后暂停 等待你的下一步指令,暂停的这一行目前处于将要执行还未执行的状态。
- F6(Step Over) 掌握 表示执行当前行的代码 切换到下一行
- F8(Resume) 掌握 快速放行到下一个断点位置(跳过我们不想查看的部分)
- F5(Step into) 目前了解 表示进入到要执行的方法内
- 观察变量表等信息 发现问题 解决问题