程序流程控制
流程控制
再Java代码运行时,程序的代码默认时由上而下顺序执行,只有下面3种情况会修改程序执行的顺序:
- 方法的调用
- 选择语句
- 循环语句
布尔逻辑
-
布尔值
- true
- false 组合布尔逻辑
-
与(&& 和 &)
符号左右两边有两个表达式,若两个表达式都为真(true),则整个表达式为真(true),否则为假(false);
逻辑与(&&):是一种逻辑表达式,只能是布尔类型结果的表达式。 短路运算 ,若第一个表达式为假(false),则整个表达式为假(false),且第二个表达式不执行;
按位与(&):是一种数学计算表达式,可以是布尔类型、单个字符、数值。任何情况两个表达式都会执行; -
或( || 和 | )
符号左右两边有两个表达式,有一个或两个表达式为真(true),则整个表达式为真(true),否则为假(false);
逻辑或( || ):是一种逻辑表达式,只能是布尔类型结果的表达式。短路运算,若第一个表达式为真(true),则整个表达式为真(true),且第二个表达式不执行;
按位或( | ):是一种数学计算表达式,可以是布尔类型、单个字符、数值。任何情况两个表达式都会执行; -
异或( ^ )
符号左右两边有两个表达式,有且只有一个表达式为真(true),则整个表达式为真,否则为假(false);
-
非(! 和 ~)
只有符号右边有一个表达式;
逻辑非( ! ):右边只能是布尔类型结果的表达式,如:!true 其表达式的结果为 “false”;
按位非( ~ ):右边不能是布尔类型,可以是数值类型、单个字符。如:~3 -
增量(+ +)、减量(- -)表达式
i++;i--;++i;--i ; 单独使用直接自增自减;
i++;i--; 先运算、再自增自减;
++i;--i; 先自增自减、再运算;
条件语句
单分支if条件语句
if(条件){
满足条件执行该代码块
}
双分支if条件语句
if(条件){
条件满足执行该代码块
}
else{
条件不满足执行该代码块
}
多分支if条件语句
if(条件一){
条件一满足执行该代码块
}
else if(条件二){
条件二满足执行该代码块
}
else if(条件三){
条件三满足执行该代码块
}
else{
条件都不满足执行该代码块
}
多分支switch条件语句
switch(变量){
case 变量值1:
变量和变量值1相等执行该代码块
break;
case 变量值2:
变量和变量值2相等执行该代码块
break;
case 变量值3:
变量和变量值4相等执行该代码块
break;
default:
默认执行该代码块
break;
}
循环语句
-
for循环
- 多用于有限次数循环
- 特点:先判断再进行循环
- 先执行 表达式1,再执行 表达式2(条件),再执行 表达式三,再执行 表达式4,条件满足循环执行表达式2 3 4
for(表达式1;表达式2(条件);表达式4){
表达式3
}
for(int i = 0; i < 10;i++){
代码块
}
-
while循环
- 多用于不明确循环次数时用
- 特点:先判断再进行循环
while(条件){
条件满足执行该代码块
}
-
do while循环
- 直接执行第一次,再进行判断是否循环第二次
do{
首次执行该代码块,条件满足执行该代码块
}while(条件)
-
结束循环
- break、continue
for(表达式1;表达式2;表达式4){
break; //直接结束所有循环
}
for(表达式1;表达式2;表达式4){
continue; //结束此次循环,执行下一次循环
}