程序的流程控制
1.顺序结构
程序默认情况下是按照代码的编写顺序
从上到下一行一行依次执行
2.分支结构
程序按照一定的条件有选择的执行某一些代码
if…
if…else…
if…else if…else if…else…
switch…case…case…default…
if(条件){
满足条件要执行的语句
}
if(条件){
满足条件要执行的语句
}else{
不满足条件要执行的语句
}
if(条件){
}else if(条件){
}else if(条件){
}else{
}
if语句是互斥的,只要执行了其中的某个条件,就不再执行其它条件
判断一个整数是不是偶数
if(t%2==0){
}else{
}
switch中的变量名类型必须是 int char String 枚举这四种中的一种
case的值的类型必须和switch的变量名类型一致
当变量名的值和case的值相等的时候,就执行这个case
switch(变量名){
case 值1:
执行的语句;
break;
case 值2:
执行的语句;
break;
case 值3:
执行的语句;
break;
default:
执行的语句;
break;
}
所有使用switch的地方,一定可以用if来代替
switch的性能比if要好
如果if的条件都是 ==,并且if中的条件变量是int,char,String或者枚举
就可以使用switch来替换if
switch中的break是用来结束整个switch的
3.循环结构
程序按照条件重复的执行某一些代码
for
while
do...while
for语句的结构:
for(初始化语句;条件判断语句;条件控制语句){
循环语句;
}
for执行流程:
1.执行初始化语句
2.执行条件判断语句
3.如果条件语句为false,for循环结束
如果条件语句为true,就执行循环语句
4.执行条件控制语句
5.回到第2步,继续执行
四.无限循环
while(true){}
或
for(; ; ){}
无限循环存在的原因是并不知道循环多少次,而是根据某些条件,来控制循环
五.循环嵌套
嵌套循环是指在一个循环语句的循环体中再定义一个循环语句的语法结构
for(初始化表达式; 循环条件; 操作表达式) {
………
for(初始化表达式; 循环条件; 操作表达式) {
执行语句
………
}
………
}
例如:
int i, j; // 定义两个循环变量
for (i = 1; i <= 9; i++) { // 外层循环
for (j = 1; j <= i; j++) { // 内层循环
System.out.print("*"); // 打印*
}
System.out.print("\n"); // 换行
}
外层循环控制行,内层循环控制列
六.跳转语句
1.break:主要用在循环语句或者 switch 语句中,用来跳出整个语句块。
break 跳出最里层的循环,并且继续执行该循环下面的语句。
2.continue:适用于任何循环控制结构中。作用是让程序立刻跳转到下一次循环的迭代。
在 for 循环中,continue 语句使程序立即跳转到更新语句。
在 while 或者 do…while 循环中,程序立即跳转到布尔表达式的判断语句。
3.return:return关键字是返回的意思,其返回值有调用他的方法去接收。
return后面可以不接参数,在循环里面他代表会跳出一个循环,代码不会往他之后运行。