1.流程控制语句
①顺序结构
是程序中最简单最基本的流程控制,按照代码的先后顺序依次执行,程序中的多数代码就是如此。简言之:先写先行。
②选择结构
也被称之为分支结构。代码要执行具体的逻辑运算进行判断。逻辑运算的结果有两个所以能产生选择,按照选择的不同我们将执行不同的代码。
因此在java中专门提供了2种选择结构语句:if语句和switch语句。
(1)if语句
if语句有三种格式
1°格式:
if(关系表达式){
语句体;
}
执行流程描述:首先判断关系表达式的结果是true还是false,如果是ture则执行语句体,如果是false就不执行。
注意事项:
A.关系表达式无论是简单还是复杂其结果必须是boolean类型。
B.if语句控制的语句体如果是一条语句那么大括号是可以省略的。如果是多条语句体就不能够省略。//此处建议永远也不要省略(这里提到只是对一些刁钻的找错试题进行扫盲)
C.一般来说有左大括号就没有分号,有分号就没有左大括号。例如:
上面那种情况是不会报错的。原因?
2°格式:
if(关系表达式){
语句体1;
}else {
语句体2;
}
执行流程描述:首先判断表达式的结果是true还是false,如果是ture则执行语句体1,如果是false则执行语句体2。
三目运算符语句都可以改为if语句,但是if语句却不一定能改成三目运算符语句。(语句体中是赋值操作就可以改,但如果直接是输出语句就不能改动)(因为三目运算符运算完毕应当是一个结果而不是一个输出)。
3°格式:
if(关系表达式1){
语句体1;
}else if(关系表达式2){
语句体2;
}
...
else{
语句体n+1 ;
}
执行流程描述:首先判断关系表达式1的结果是true还是false,如果是true则执行语句体1,如果是false则判断关系表达式2的结果是true还是false,如果是true则执行语句体2,如果是false则……如果没有任何关系表达式为true就执行语句体n。
***注意:在做一个程序的基本测试的时候一定要考虑几个问题
正确数据,错误数据和边界数据。
注意:if语句的语句体部分也可以是if语句(嵌套。)
(2)switch语句
格式:
switch(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
……
default:
语句体n+1;
break;
}
表达式的取值:byte,short,int,char(最早的版本)
JDK5之后可以是枚举
JDK7之后可以是字符串
case后跟的是要跟表达式进行比较的值。
语句体是要执行的代码可以是1条或者多条。
break是控制“结束”。可以中断switch语句。
default:当所有的值都与表达式不匹配时就执行default控制的语句。//相当于if语句的else
执行流程描述:
首先计算出表达式的值,与case依次比较,一旦有了对应的值就会执行该case所控制的对应的语句体,执行过程中遇到break就结束,如果到最后所有的case数据都与表达式不匹配那么就执行default所控制的语句体。
switch语句使用时的注意事项:
a.case后面的值只能是常量不能是变量,且多个case的值互相之间不能是相同的。
b.default可以省略,但是不建议,因为它可以对不正确的情况做出提示。//除非判断的值是固定的如单选题。
c.break省略不会报错,但是结果不一定是你想要的(容易出现case穿透的现象)至于最后的break是否省略不重要。
d.default可以出现在switch语句中的任意位置。//建议在最后。
e.switch语句的结束条件:
A.遇到break结束。
B,执行到末尾就结束。
③循环结构
循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,在反复执行这个循环体时需要在合适的时候将循环判断条件修改为false,从而结束循环,否则循环将一直执行下去形成死循环。
循环语句的组成:
①初始化语句:
可以完成一些初始化操作。
②判断条件语句:
这是一个boolean表达式,可以决定是否执行循环体。
③循环体语句:
也就是将多次做的事情。
④控制条件语:
通过用于控制循环条件中的变量,使循环在合适的时候结束。