目录
显示
for
循环
for (initialization; condition; update) {
// 循环体代码
}
其中,`initialization`是循环变量的初始值;`condition`是循环控制条件,当条件为`false`时循环结束;`update`是循环变量的更新操作,通常是递增或递减。
`for`- 循环的执行流程是:先执行`initialization`语句,然后判断`condition`是否为`true`,如果为`true`,则执行循环体代码,接着执行`update`语句,再次判断`condition`是否为`true`,如此重复直到`condition`为`false`。
for(int sum=0;;){
sum++;
if(sum>=10) {
System.out.println(sum);
break; }
}
for(;;){
}
While循环
while (condition) {
// 循环体代码
}
其中,`condition`是循环控制条件,当条件为`false`时循环结束。`while`循环的执行流程是:先判断`condition`是否为`true`,如果为`true`,则执行循环体代码,再次判断`condition`是否为`true`,如此重复直到`condition`为`false`。
### do-While 循环
````java
do {
// 循环体代码
} while (condition);
其中,`condition`是循环控制条件,当条件为`false`时循环结束。`do-while`循环的执行流程是:先执行一次循环体代码,然后判断`condition`是否为`true`,如果为`true`,则继续执行循环体代码,接着再次判断`condition`是否为`true`,如此重复直到`condition`为`false`。
### break和continue语句
continue
语句用于结束当前循环中的本次迭代,还是会继续执行剩下的循环。
break
语句用于结束一个循环,其执行的效果是直接跳出循环,继续执行循环后面的代码。
### 底层解析🧐
```java
public static void main(String[] args) {
for (int i = 0; i < 10; i++) {
if (i == 5) {
break;
}
}
}
本字节码文件中会有2个GOTO关键字(GOTO L1 L2 )
💡GOTO L1 是 为了继续循环,GOTO L2 是当满足条件时跳出循环