---------------------- <a href="http://www.itheima.com"target="blank">ASP.Net+Unity开发</a>、<a href="http://www.itheima.com"target="blank">.Net培训</a>、期待与您交流! ----------------------
今天学习了Java中的流程控制语句,在Java中流程控制语句用于控制程序的运行顺序。正确的使用流程控制语句可以使程序的代码更加优化。
Java中的流程控制语句主要有:判断结构语句,选择结构语句和循环结构语句。
1:判断结构语句:
判断结构有三种格式:
格式1:
if(逻辑表达式) {
执行语句;
}
格式2:
if(逻辑表达式) {
执行语句;
}else {
执行语句;
}
格式3:
if(逻辑表达式) {
执行语句;
}else if (逻辑表达式) {
执行语句;
}else if (逻辑表达式) {
执行语句;
}
……
else {
执行语句;
}
格式1是进行一次判断,有一个选择,如果满足逻辑表达式的条件,就执行后面的执行语句,如果不满足,就跳过这个判断结构运行其它内容;
格式2是进行一次判断,有两个选择,如果满足逻辑表达式的条件,就执行if后面的执行语句,如果不满足,就执行else里面的执行语句;
格式3是进行多次判断,有多个选择,如果满足if里面的逻辑表达式,就执行if后面的执行语句,如果不满足,就判断else if里面的逻辑表达式,如果满足,就执行这个else if里面的条件表达式,如果不满足,继续判断下一个else if里面的逻辑表达式,一直到所有的else if里面的逻辑表达式都执行完制后仍然不满足,就执行else里面的执行语句。
特点:
它们其实都可以看成是一条语句。
条件表达式无论多复杂,结果都是boolean类型。
例如下面的这个通过给定的月份判断季节就是用了格式3的结构。
class SiJi
{
public static void main (String[] args) {
int x = 5; //给出月份
if(x > 12 && x < 0) {
System.out.println("请输入正确的月份");
}else if (x >= 3 && x <= 5) {
System.out.println("春季");
}else if(x >= 6 && x <= 8) {
System.out.println("夏季");
}else if(x >= 9 && x <= 11){
System.out.println("秋季");
}else {
System.out.println("冬季");
}
}
}
2:选择结构语句
格式:
switch(表达式) {
case 取值1:
执行语句;
break;
case 取值2:
执行语句;
break;
......
default:
执行语句;
break;
}
特点:
switch语句的接收类型:byte,short,int,char,枚举(JDK5.0),String(JDK7.0).
case和default在位置上没有关系,建议将default放在最后,在执行上有关系,先匹配case,没有匹配的case再执行default。
case语句的结束:执行到break或者执行到switch末尾。
注意:在一般情况下,每一个case里面都要写break,以防止case穿透。
3:循环语句结构:
循环语句的3种格式:
格式1:
for (初始化表达式;条件表达式;增量表达式) {
循环体;
}
格式2:
while(条件表达式) {
循环体;
}
格式3:
do {
循环体;
}while(条件表达式);
特点:
条件表达式一定要返回true或者false。返回true,进入循环体执行循环,返回false,不执行循环体。
do......while先执行一次然后再判断条件表达式,也就是说do......while至少会执行一次。for循环和while循环都是先判断条件表达式,如果条件表达式为true,执行循环体,如果为false,就不执行循环体。
循环的嵌套:在一个循环体内包含另一个循环体。
特点:
外层循环每执行一次,内层要全部执行一次。
两层循环嵌套的循环次数:外层循环次数 * 内层循环次数。
在嵌套循环里面要特别注意变量的作用域。
例如打印九九乘法表的小程序:
class PritnJiuJiu {
public static void main (String[] args) {
for(int x = 1;x <= 9;x++) {
for(int y = 1;y <= x;y++) {
if(y != x) {
System.out.print("y" + "*" + "x" + "=" + y * x + "\t");
}else {
System.out.println("y" + "*" + "x" + "=" +y * x);
}
}
}
}
}
这段代码就是通过for循环的嵌套来打印乘法表,其中y是在内层循环中定义的,只能在内层循环中作用。
4:continue和break:
应用场景:
continue用于循环结构
break用于循环结构和选择结构。
作用:
continue:结束本次循环,继续下一次循环。
break:结束当前的循环
---------------------- <a href="http://www.itheima.com"target="blank">ASP.Net+Unity开发</a>、<a href="http://www.itheima.com"target="blank">.Net培训</a>、期待与您交流! ----------------------详细请查看:<a href="http://www.itheima.com" target="blank">www.itheima.com</a>