-
特殊for循环
1.1 缺失一个条件
1 .1.1 条件判断语句缺失 类似缺失 //没有条件判断语句,会导致程序一直执行循环内代码,永远不停止,死循环 for(int i=0; ;i++){ System.out.println(i); } 1.1.2 条件判断语句类似缺失----中间为true //此时为死循环,一直执行,不会最后跳出循环 for(int j=0;true;j++){ System.out.println(j); } 1.2.3 缺失初始化语句 //可以使用前面定义过的的变量 int i=0; for( ;i<10;i++){ System.out.println(j); } 1.2.4 缺失循环后语句 //循环体中有循环后语句 for(int j=0;j<10; ){ j++; System.out.println(j); } //循环体中没有循环后语句,看判断条件,如果进入循环,就是死循环 for(int j=0;j<10; ){ System.out.println(j); }
1.2 缺失两个条件
// 缺失初始化语句 和 条件控制语句
// 初始化语句在前面,控制条件缺失,就是死循环
int i=0;
for( ; ; i++ ){
System.out.println(j);
}
1.3 缺失三个条件
//三个都缺失,相当于true,死循环
for( ; ; ; ){
System.out.println();
}
2.流程关键字
2.1 return
// return 除了返回返回值外,还可以进行流程控制
//return 表示循环停止,同时程序也停止,后面的所有代码都不执行
public class ReturnDemo {
public static void main(String[] args) {
int i=0;
while (true){
i++;
System.out.println(i);
if(i>=5){
return;//跳出循环,return之后的代码全都不会执行
}
}
// System.out.println("不会执行");
}
}
2.2 break语句
//break 表示跳出当前循环,循环之后的代码依旧执行
public class BreakDemo {
public static void main(String[] args) {
int i=0;
while (true){
i++;
System.out.println(i);
if(i>=5){
break;//跳出循环,循环之后的代码还是会执行
}
}
System.out.println("依旧执行");
}
}
2.3 continue语句
//continue 表示 跳出本次循环,进行下一次循环,只能控制当前循环,无法控制循环之外的代码
public class ContinueDemo {
public static void main(String[] args) {
int i=0;
while (true){
i++;
if(i==5){
// 跳出循环,循环中continue之后的代码不会执行,continue影响不到循环外面的语句
continue;
}
System.out.println(i);
System.out.println("continue之后的语句");
}
}
}
2.4 别名
//当存在嵌套循环时,跳出外面的循环不好操作,可以给外面的循环起个别名
public class KeywordDemo {
public static void main(String[] args) {
// break:别名 ----跳出指定循环
// continue 也可以使用别名
w: for (int i = 0; i < 10; i++) {
for (int j = 0; j < 25; j++) {
System.out.println(i * j);
if ((i * j) > 20) {
break w;
}
}
}
}
}



