控制结构
顺序控制
从上到下执行
分支控制
单分支
if语句
双分支
if else语句
多分支
if
else if
...
else
嵌套分支
一个分支结构里面完整的嵌套了另一个完整的分支结构.
最好不要超过三层!!
嵌套分支练习:
switch分支结构
1.表达式数据类型应该和case后常量一致,或是可以自动转换成可以相互比较的,
2.switch(表达式)的返回值必须是(byte,short,int,char,enum[枚举],String)
3.case后必须是常量或常量表达式
4.子语句default是可选的,当没有匹配的case时,执行default,若没default则没有输出
5.若没有break,则会顺序执行到Switch结尾,除非遇到break
switch和if else 的选择
看心情,注意byte,short,int,char,enum[枚举],String这六种才能用switch
循环语句
for循环
1.循环条件是返回一个布尔值的表达式
2.初始化和变量迭代可以写在其他地方,但不能省略.
int
3.for(;;)无限循环,for(i=0;i<99;i++){...}执行顺序,i=0->i<99->...->i++
4.循环初始值可以有多条初始化语句和迭代语句
while循环
while(循环条件){
循环体;
循环变量迭代;
}
先判断在执行,可能一次都不执行
do while循环
do{
循环体;
循环变量迭代;
}while(循环条件)
先执行后判断,至少执行一次
多重循环控制
1.嵌套循环,最好最多嵌套两层
2.实际上,嵌套循环就是把内层循环当成的循环体
3.设外层循环次数为m次,内层为n次,则内层循环体实际上执行m*n次
break需求
用于终止某个语句块的执行:Switch,循环
label1:{...
label2: {...
label3: { ...
break label2;
...
}
}
}
细节和注意事项:break语句出现在多层嵌套的语句块中,可以通过标签指明终止的信息是哪
- break语句可以指定退出哪层
- label1是标签,名字有程序员决定
- break后指定到哪个label就退出到哪里
- 实际的开发中,尽量不要使用标签
- 如果没有指定break,默认退出最近的循环题
跳转控制语句-continue
用于结束本次循环,继续下次循环,本次循环在continue后的代码就不会再执行了,直接跳到下一次循环
跳转控制语句-return
当return用在方法时,表示跳出方法,如果使用在main,表示退出程序