一:for
1:基本语法
for (循环变量初始化;循环条件;循环变量迭代){
循环操作(可以是多条语句)
}
2:细节说明
:::danger
- 循环条件是返回一个布尔值的表达式
- for( ; 循环判断条件 ; )中的初始化和变量迭代可以写到其他地方去,但是两边的分号不能省略
循环初始值可以有多条初始化语句,但要求类型一样,并且中间用逗号隔开,循环变量迭代也可以有多条变量迭代语句,中间用逗号隔开。 :::
3:练习
二:while
1:基本语法
while(循环条件){
循环体;
循环变量迭代
}
2:细节说明
:::danger
循环条件是返回一个布尔值的表达式
- while循环是先判断再执行语句
:::
3:练习
三:do-while
1:基本语法
```java 循环变量初始化; do{ 循环体; 循环变量迭代; }while(循环条件)
<a name="izaWh"></a>
## 2:细节说明
:::danger
1. **_循环条件是一个返回布尔值的表达式_**
2. **_do-while 循环是先执行,再判断,因此它至少执行一次_**
:::
<a name="B6EG7"></a>
## 3:练习题
<a name="Of0PF"></a>
# 四:多重循环控制
<a name="lU5yn"></a>
## 1:介绍
- 将一个循环放在另一个循环体内,就形成了嵌套循环。其中,for ,while ,do...while均可以作为外层循环和内层循环。【建议一般使用两层,最多不要超过3层,否则,代码的可读性很差】
- 实质上,嵌套循环就是把内层循环当成外层循环的循环体。当只有内层循环的循环条件为false时,才会完全跳出内层循环,才可结束外层的当次循环,开始下一次的循环[听不懂,走案例1。
- 设外层循环次数为m次,内层为n次,则内层循环体实际上需要执行m*n次。
```java
for (int i = 0; i < 7; i++) {
for (int j = 0; j < 4; j++) {
System.out.println("Sakura~");
}
}//最终执行4×7=28次
五:多重循环练习题
1:经典的打印金字塔
int cen = Scanner.nextInt();
for (int i = 1; i <= cen; i++) {
for (int k =1; k <= cen-i; k++) {
System.out.print(" ");
}
for (int j = 1; j <= 2*i-1; j++) {
if(j ==1 || j == 2*i-1){
System.out.print("*");
}else if (i == cen){
System.out.print("*");
}else {
System.out.print(" ");
}
}
System.out.println("");
}