什么是循环语句?
Java 循环语句用来在程序中重复执行某些语句。顺序结构的程序语句只能被执行一次。如果您想要同样的操作执行多次,就需要使用循环结构。
Java 中主要有三种循环结构:
- while 循环
- do…while 循环
- for 循环
while 循环
只要布尔表达式为 true,循环就会一直执行下去。
示例如下:
while(布尔表达式) {
//循环内容
}
do while 循环
对于 while 语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次。
do…while 循环和 while 循环相似,不同的是,do…while 循环至少会执行一次。
示例如下:
do {
//循环内容
}while(布尔表达式);
for 循环
循环结构变得更加简单,有明确的循环执行次数。
示例如下:
for(初始化; 布尔表达式; 更新) {
//循环内容
}
for(int i=0;i<10;i++){
System.out.println("数字" + i);
}
JDK5 引入了一种主要用于数组或列表对象的增强型 for 循环,不关心执行次数。
示例如下:
for(声明语句 : 数组或列表对象){
//循环内容
}
//声明语句为 int i;数组或列表对象为 ints
int [] ints = new int[]{1,2,3,4};
for (int i : ints) {
System.out.println(i);
}
还有一种list .foreach 的循环写法,JDK8提出的。
示例如下:
//Arrays.asList 快速填充元素,返回list
List<Integer> list = Arrays.asList(1, 2, 3, 4);
//e指的list被循环的元素
list.forEach(e -> System.out.println(e));
break、continue、return的区别是什么?
break:结束所在循环
break 主要用在循环语句或者 switch 语句中,用来跳出整个语句块。break 跳出该循环并且继续执行该循环体外下面的语句。如果存在多层循环,break则跳出最近的一层循环,进入外层循环。
continue:提前结束本次循环
continue 适用于任何循环控制结构中。作用是让程序立刻跳转到下一次循环的迭代。在 for 循环中,continue 语句使程序立即跳转到更新语句。在 while 或者 do…while 循环中,程序立即跳转到布尔表达式的判断语句。
return:结束整个方法
return并不是专门用来结束循环的关键字,它可以用来结束一个方法或循环。当一个方法执行到return语句时,该方法就会被结束。与break和continue不同的是,return是直接结束整个方法,不管这个return处在多少层的循环之内。
多层循环时,如何跳出指定循环?
直接上代码:
//lebel 循环层的别名。break lebel1;跳出lebel1的循环
label0: for (int i=0;i<5;i++){
label1: for(int j=0;j<5;j++){
label2: for(int k=0;k<5;k++){
if(k==2){
break label1;
}
System.out.println("最里层的k" + k);
}
System.out.println("中间层的j" + j);
}
System.out.println("最外层的i" + i);
}