第三节 循环结构——for
本小节开始讲解循环结构,循环结构的目的是为了重用已有的代码而无需再编写一次,比如,我们要打印10词“Hello World!”,我们有两种办法实现它,第一种就是写10遍System.out.println("Hello World!");,第二种则是使用一种策略让程序重复执行这一句代码,执行10次。这第二种策略就是循环,循环有3中实现方法,本节就讲解第一种实现策略for循环。
for循环的结构
for循环的结构如下:
for(代码1;代码2;代码4) {
代码3
}
其中:
- 代码1:用于循环条件的初始化,内容任意,可以不写,只执行一次。
- 代码2:用于循环是否结束的条件判断,内容应为boolean类型,也可以不写,不过不写的话,会变成死循化(就是一直循环程序不停止),必须在循环体内处理跳出循环的条件,循环执行,知道的到的结果为true就执行循环,结果为false就退出循环。
- 代码3:用于实际干活的代码,内容任意(你要循环干什么就写什么),可以不写,不过如果不写的话,这个循环似乎没有必要存在了,也是循环执行。
- 代码4;用于循环后的条件修改,内容应该与代码1,代码2,代码4相呼应,他们三个构成了循环的控制,也可以不写,不过不写的话,也可能导致因为循环条件保持不变而陷入死循环。
代码执行顺序
为了更加形象化表达,给它前后增加点东西:
代码0
for(代码1;代码2;代码4) {
代码3
}
代码5
他们的具体顺序如下:
代码0//循环前的代码
代码1//初始化循环条件
代码2//判断循环条件是否满足,如果满足执行代码3
代码3//循环体,工作部分
代码4//修改循环条件
代码2(结果true)
代码3
代码4
代码2(结果true)
代码3
代码4
代码2(结果true)
代码3
代码4
代码2(结果true)
代码3
代码4
...
代码2(结果false)
代码5//循环后的代码
案例
我们现在就让他打印10次Hello World。
for(int times = 0; times < 10; times = times + 1) {
System.out.println("Hello World!");
}
将代码1写外面空出来:
int times = 0;
for(; times < 10; times = times + 1) {
System.out.println("Hello World!");
}
将代码2空出来:
for(int times = 0; ; times = times + 1) {
if(times >= 10) {
break;//跳出循环
}
System.out.println("Hello World!");
}
将代码3空出来:
for(int times = 0; times < 10; ) {
System.out.println("Hello World!");
times = times + 1;
}
全空出来:
int times = 0;
for(;;) {
System.out.println("Hello World!");
times = times + 1;
}
灵活运用时关键,不过标准的写法是三个都不空,他们各司其职。
~完~
学完本章后,可以制作一个乘法口诀表:结果如下,请思考如何实现。
1X1=1
1X2=2 2X2=4
1X3=3 2X3=6 3X3=9
1X4=4 2X4=8 3X4=12 4X4=16
1X5=5 2X5=10 3X5=15 4X5=20 5X5=25
1X6=6 2X6=12 3X6=18 4X6=24 5X6=30 6X6=36
1X7=7 2X7=14 3X7=21 4X7=28 5X7=35 6X7=42 7X7=49
1X8=8 2X8=16 3X8=24 4X8=32 5X8=40 6X8=48 7X8=56 8X8=64
1X9=9 2X9=18 3X9=27 4X9=36 5X9=45 6X9=54 7X9=63 8X9=72 9X9=81
知识点:循环里面再循环,打印换行和打印不换行