for循环
for(表达式1;表达式2;表达式3){
循环体
}
表达式1:循环变量初始化语句
表达式2:循环终止的判断条件语句
表达式3:循环改变的控制条件语句
循环体:循环要执行的语句
for(int i=0;i<10;i++{
System.out.println(i)}
执行流程
T 真true F假false
表达式1-->表达式2T-->循环体-->表达式3-->表达式2T-->循环体-->表达式3-->表达式2T......表达2F-->跳过循环体执行循环后面的语句;
for后面的括号里的三个表达式都可以省略但分号不能省略
表达式2省略之后循环变成的死循环所以必须在循环体内给出跳出循环的结束条件
while循环
while(条件表达式){
循环体
}
条件表达式是终止循环的条件语句相当于for的表达式2要求为布尔表达式
循环体条件表达式为真时执行的条件
条件表达式T-->循环体-->条件表达式T-->循环体-->条件表达式F-->执行循环后面的语句
do-while循环
do{
循环体
}while(条件表达式);
do-while和while的区别为do-while会在判断条件之前先执行一次
简单来说
while:先判断再执行
do-while:先执行再判断
循环体-->条件表达式T-->循环体-->条件表达式F-->执行循环后面的语句
循环的比较
循环次数确定的情况下选for
循环次数不确定的情况下选while和do-while
防止死循环
break和continue
break终止某个语句块的执行
在循环中跳出循环
在switch中跳出某个所在的switch语句
可以使用lable标签实现跳出执行的循环
out:for(){
for{
break out;
}
}
以上代码会直接从内层循环直接跳出到外层循环
continue会跳出本次循环
同样可以跳出到指定的标签处实现直接跳出内层循环开始外层循环的下一次执行