- 程序执行的流程结构
(1)顺序结构(默认)
(2)选择结构
(3)循环结构 选择结构
(1)if语句
单分支:
if(boolean条件表达式){
//条件为true时,执行的语句组
}
执行流程:
先执行条件表达式;
如果返回true,执行后面的语句组,语句组执行完毕if语句结束;
如果返回false,if语句结束。
双分支:
if(boolean条件表达式){
//条件为true时,执行的语句组 1
}else{
//条件为false时,执行的语句组 2
}
执行流程:
先执行条件表达式;
如果返回true,执行后面的语句组1,语句组执行完毕if语句结束;
如果返回false,执行else后面的语句组2,语句组执行完毕if语句结束。
多分支:
if(boolean条件表达式1){
//条件1为true时,执行的语句组 1
}else if(boolean条件表达式2){
//条件2为true时,执行的语句组 2
}
…
else{
//以上条件都为false时,执行的语句组 n
}
执行流程:
先执行条件表达式1;
如果返回true,执行后面的语句组1,语句组执行完毕if语句结束;
如果返回false,执行条件表达式2;
….
如果以上条件都为false时,执行语句组n,语句组执行完毕if语句结束。
(2)switch语句
switch(条件表达式){
case 常量1:
语句组1;
[break;]
case 常量2:
语句组2;
[break;]
…
case 常量n-1:
语句组n-1;
[break;]
[default:语句组n]
}
注意:条件表达式的运算结果类型只能是byte,short,int,char(jdk1.7开始支持String)
break语句的作用是结束当前所在的switch语句。
执行流程:
先执行条件表达式,然后执行switch的语句组(从上往下依次执行每一个case语句);
执行case:
判断条件表达式的结果和case的常量是否相等;
如果相等,执行后面的语句组,遇到break结束switch语句;
如果不相等,跳过,执行下一个case;
直到遇到break语句或执行完毕,switch语句结束。循环结构的语句
(1)for语句
for(初始化表达式;boolean条件表达式;迭代语句){
//循环体:要重复执行的语句组
}
执行流程:
先执行初始化表达式;
再执行条件表达式;
如果为true,执行循环体,接着执行迭代语句,然后再执行条件表达式;
如果为false,for语句结束。
(2)while语句
while(boolean条件表达式){
//循环体:要重复执行的语句组
}
执行流程:
先执行条件表达式;
如果为true,执行循环体,然后继续执行条件表达式;
如果为false,while语句结束。
(3)do while语句
do{
//循环体:要重复执行的语句组
}while(boolean条件表达式);
执行流程:
先执行执行循环体;
再执行条件表达式;
如果为true,执行循环体,然后继续执行条件表达式;
如果为false,while语句结束。
说明:循环体至少执行一次。
4.流程跳转语句
(1)break语句
break可以用在switch语句中,作用是结束switch语句;
break可以用在循环体中,作用是结束当前循环。
(2)continue语句
continue只能用在循环体中,作用是结束当次循环,然后进入下一次循环。
5.变量的作用域
(1)同义词
作用域==作用范围
(2)概念
一个变量能够被使用的所有地方。
(3)作用域的范围
一个变量只能在声明它的最小语句组中使用。
(4)重名问题
如果两个变量作用域有交集,名字必须不同;
如果两个变量作用域没有交集,名字可以相同;
(5)变量的生存周期
开始:变量声明
销毁:一个变量所在的作用域中的代码被执行完毕时,系统会销毁该变量。
04-21
08-12
08-12