循环结构 - 语法
前言:什么是循环结构
在日常生活中,会有很多需要反复执行的事情,比如:每一年的4个季节,每一周的7天,每日的3餐,打印机每份文档打印50份,一圈跑道400米跑3圈,都是在反复执行的。
再来看看软件中的要求
问题1:输出100行语句,每行语句都一样,即:
- 好好学习,天天向上!
- 好好学习,天天向上!
- 好好学习,天天向上!
- …
问题2:输出100行语句,每行语句都类似,即:
- 第1, 有付出才有回报!
- 第2, 有付出才有回报!
- 第3, 有付出才有回报!
- …
- 第100, 有付出才有回报!
问题3:计算1到100乘以8.88的结果
- 1× 8.88 =8.88
- 2× 8.88 =17.76
- 3× 8.88 =26.64
- …
- 100× 8.88 =888
诸如此类问题都是在反复执行的,在软件系统中可以通过循环这种语法结构来解决。循环是程序设计语言中反复执行某些代码的一种计算机处理过程, 是一组相同或相似语句被有规律的重复性执行。
对于循环来说,需要考虑两个要素,其一要素为循环体, 也就是被反复执行的相同或相似的语句,其二要素为循环的条件,也就是循环得以继续执行下去的条件,常常以循 环次数的方式体现。
常用的循环结构有:while、do-while、for。
1.掌握while循环结构
while 语法
// while:当....的时候 和if选择结构很相像
// 多次的判断 循环条件
while(条件表达式){
// 循环操作/循环体
}
// if只会执行一次判断
if(条件表达式){
// 执行内容
}
一个循环必然包括循环条件和循环操作(循环体),在遇到一个需求的时候,如果考虑用循环解决,必须首先将这两个部分识别出来。
示例如下:
/**
* 需求:模拟打印50份试卷
* 循环条件:打印完50份
* 循环操作:打印试卷
*
* 2019年3月20日 上午9:13:39
*/
public class Demo2 {
public static void main(String[] args) {
// 初始化【循环变量】
int i = 1;
// 套用while循环语法
// 循环条件
while(i <= 50) {
// 循环体
System.out.println("正在打印第"+i+"份试卷!");
// 更新循环变量【循环出口】 必须有这种更新变量的过程 否则循环称为死循 环
i ++;
}
}
}
while循环的组成(四要素):
➀、循环变量的初始化:如果没有它 无法进行判断(编写条件表达式)
➁、循环的条件:循环满足什么条件时执行
➂、循环操作:循环中应该进行的重复操作
➃、循环变量的更新:如果不进行变量更新,那么变量不会进行改值,会造成循环条件一直满足,出现死循环。
示例:
/**
-
需求:老师要求某同学完成学习任务 检查是否合格 如果合格则停止 不合格继续完成学习任务。
-
循环条件:不合格 就继续
-
循环操作:完成学习任务
*/
public class Demo3 {public static void main(String[] args) {
// 使用Scanner来进行是否合格的输入 Scanner input = new Scanner(System.in); System.out.print("某同学的学习任务是否合格?(y/n):"); // 1.循环变量的初始化 String isPass = input.next(); // 2.循环条件 // 先记住:字符串不能使用==来比较内容相同(关系到引用数据类型的问题 后期讲解) // 字符串比较内容相同:equals() while("n".equals(isPass)) { // 3.循环操作 System.out.println("上午阅读教材,下午上机编程!"); // 4.循环出口 System.out.print("史浩然的学习任务是否合格?(y/n):"); isPass = input.next(); } System.out.println("任务完成!等级提升!");}
}
2. 掌握do-while循环结构(前期常用)
语法:
// 初始化循环的变量
do{
// 循环操作
// 循环出口
}while(循环条件);
示例:
* 需求:老师要求某同学完成学习任务 检查是否合格 如果合格则停止 不合格继续完成学习任务。
* 循环条件:不合格 就继续
* 循环操作:完成学习任务
*/
public class Demo1 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
// 初始化循环变量
String isPass;
do {
// 循环操作
System.out.println("上午阅读教材,下午上机编程!");
// 循环出口
System.out.print("某同学的学习任务是否合格?(y/n):");
// 变量的作用域(生效的范围) 变量的作用域和其直接所属的{}有关
isPass = input.next();
}while("n".equals(isPass)); // 循环条件
System.out.println("任务完成!等级提升!");
}
}
while和do-while的区别?
➀、语法不同:
while(循环条件){
// 循环操作
}
do{
// 循环操作
}while(循环条件);
➁、运行时机不同:
while是先判断再执行。
do-while是先执行再判断。
当第一次条件不成立时,while不会执行!而do-while无论是否成立都至少会执行一次!
3. 掌握for循环结构
for循环只能用于固定循环次数的场景。
语法:
for(1;2;3){
4
}
1:初始化循环的变量
2:循环条件
3:更新循环变量
4:循环体
1 2 4 3 2 4 3 2 4....
作者:王攀
来源:北大青鸟Java课程J335班
时间:2019年3月26日
本文深入讲解了循环结构的概念及其在程序设计中的应用,包括while、do-while和for三种主要循环结构的语法特点及示例代码,帮助读者理解并掌握循环的基本原理。

被折叠的 条评论
为什么被折叠?



