控制语句
控制语句的出现可以让我们的程序具有逻辑性/条理性,可以使用控制语句来实现一个“业务”了。
控制语句包括几类?
3类:
选择语句
循环语句
转向语句
选择语句也可以叫做分支语句
if 语句
switch 语句
循环语句:主要循环反复的去执行某段特定的代码块
for 循环
while 循环
do…while… 循环
转向语句
break
continue
return
switch语句
switch (值){
case 值1:
java语句;
break;
case值2:
java语句;
break;
default:
java语句;
}
以上是一个完整的 switch 语句:其中 break 语句不是必须的,default也不是必须的。
switch语句支持的值有哪些?
本质上只支持int类型以及String类型。JDK8之前不支持String类型,只支持int。
switch语句中“值”与“值”之间比较的时候会使用“==”进行比较。
注意:如果分支执行了,但是分支最后没有"break;"此时会发生case穿透现象。
for循环
for(初始化表达式;布尔表达式;更新表达式){
循环体;//循环体由java语句构成
}
注意:初始化表达式最先执行,并且在整个循环中只执行一次。
执行原理:
先执行初始表达式,并且初始表达式只执行1次,然后,判断条件表达式的结果,如果条件表达式结果为true,则执行循环体,循环体结束之后,执行更新表达式。更新之后,再判断条件表达式的结果,如果还是true,继续执行循环体直至条件表达式结果为false。
初始表达式、布尔表达式、更新表达式都可以缺省,不是必须的。
while循环
while(布尔表达式){
循环体;
}
执行原理:
判断布尔表达式的结果,如果结果为true ,就执行循环体,循环体结束之后再次判断布尔表达式,如果还是为true ,继续执行循环体,直至布尔表达式的结果为false,while循环结束。
for和while完全可以互换,只不过语法格式不一样。
do…while循环
do {
循环体;
}while(布尔表达式);
注意:do…while循环最后的分号不要忘记。
执行原理:
先执行循环体当中的代码,执行一次循环体之后,判断布尔表达式的结果,如果为true,则继续执行循环体,如果为false循环结束。
转向语句
break;continue ;语句比较特殊,其都是一个语句成为一个完整的java语句。
break;语句使用的位置:第一个位置,switch语句中,用来终止switch语句的执行;第二个位置,break语句用在循环语句当中,用来终止循环的执行。
break一般终止的是离它最近的循环,如何用break终止指定的循环?
首先给循环起个名字,然后在break后面加上要终止循环的名字。
以下代码终止指定的循环,程序往下执行。
a: for(int k = 0 ; k < 2 ; k++){
b:for (int i = 0 ; i < 10 ; i++){
if(i = 5 ){
break a;
}
}
}
continue :终止当前“本次”循环,直接进入下一次循环继续执行。