顺序结构
特点:
程序从上往下依次执行,中间没有跳转
注意:
变量遵循前向引用,也就是变量必须在使用前已经声明并赋值了!
分支结构
特点:
程序从多条路径中最终选择一条去执行!
一、if结构
特点:
①条件的结果类型是boolean类型,表现形式:boolean的变量、boolean变量的赋值、关系表达式、逻辑表达式
boolean a = false;
if(a){
System.out.println("嘻嘻");
}
②大括号中的执行语句可以有多条
③大括号可以省略,默认执行第一句
if(){
if()
System.out.println();
else
System.out.println();
}
1.单分支
语法:
if(条件){
语句块
}
2.双分支
语法:
if(条件){
语句块1
}else{
语句块2
}
3.多重分支
语法:
if(条件){
语句块1
}else if(条件2){
语句块2
}
...
else{
语句块n
}
执行特点:
从上往下依次判断if条件,如果成立,则执行对应语句块,下面将不再判断。如果不成立,则继续往下判断!
4.嵌套分支
语法:
if(){
if(){
}
}else{
if(){}else if(){}else{}
}
二、switch结构
语法:
switch(变量或表达式){
case 常量1:语句块1;break;
case 常量2:语句块2;break;
...
default:语句块n;break;
}
执行顺序:
先判断变量或表达式的结果,依次匹配各个case后的常量,如果相等,则执行对应的语句块,直到遇见break为止
如果都不相等,则执行default语句块,直到遇见break为止
注意事项:
①变量或表达式类型只能是 int、byte、short、char、枚举(jdk5.0)、String(jdk7.0)
②case后的常量值不可以重复
③case后不能是变量
④break可以省略,可能会影响效果
⑤default可以省略,也可以提到前面,可能会影响效果
三、if和switch的对比
能用switch的,肯定能用if
能用if的,不一定能用switch,要求为:
①等值判断
②判断的类型必须int、byte、short、char、枚举(jdk5.0)、String(jdk7.0)
如果能用switch解决,则最好用switch,因为效率较高,语义更加明确!
循环结构
一、特点:
程序在满足某个特定条件的情况下,反复执行某段代码
二、四要素
1.循环变量初始化
2.循环条件
3.循环操作
4.循环变量更新
三、分类
while
do while
for
jdk5.0出现的新特性:增强for
四、三种循环结构的具体实现 ★
1.while结构
语法:
循环变量初始化
while(循环条件){
循环操作
循环变量更新
}
执行顺序:
先执行循环变量初始化,然后判断循环条件是否成立,如果成立进入循环体执行循环操作、循环变量更新,然后继续判断循环条件,直到循环条件不成立为止。
2.do while
循环变量初始化
do{
循环操作
循环变量更新
}while(循环条件);
执行顺序:
先执行循环变量初始化,然后执行循环操作和循环变量更新,然后判断循环条件,如果成立,则继续进入循环体执行循环操作和变量更新,直到循环条件不成立为止
3、for结构
for(循环变量初始化;循环条件;循环变量更新){
循环操作
}
执行顺序:
先执行循环变量初始化,然后判断循环条件,然后进行循环操作,然后循环变量更新,继续判断循环条件,直到循环条件不成立为止
五、三种循环结构的对比
相同点:
①都具备循环四要素
②都能解决任何类型的循环题目
不同点:
①执行顺序不同
while和for 先判断后执行;do while 先执行后判断
②效率不同
do while效率最高
③应用场景不同
知道次数的题型优先考虑使用for
不知道次数的题型,如果先判断则使用while,如果先执行则使用do while。
六.落地步骤★
题型一:知道次数
1、套用for循环的语法
for(int i=1;i<=次数;i++){
}
2、分析循环操作
3、检测四要素
题型二:不知道次数
1.套用while或do while的语法
while(){
}
2.分析条件和操作
3.检测四要素
七、总结循环结构中常见的题型
1、遍历1——100之间满足条件的数
2、计数
3、求和
4、九九乘法表
5、三个班五名同学平均分
跳转结构
一、特点
改变正常的程序控制流的方向
二、分类
1、break
2、continue
3、return
三、跳转结构的使用特点
1、break:一般用于switch或循环中,作用为跳出所在的switch或循环
语法:
一般搭配if结构放在循环中或switch中
特点:
① 只能跳出所在的一层循环或switch
②如果想跳出外层循环,可以搭配标签使用,具体语法如下
label:while(){
while(){
if(){
break label;
}
}
}
2、continue:只能用于循环中,作用是结束本次循环,继续下一次循环
特点:
①只能对一层循环起作用
②如果想对外层循环起作用,可以搭配标签使用,具体语法如下
label:for(){
for(){
while(){
continue label;
}
}
}
3、return:可以用在方法中的任何地方,作用:跳出所在方法
public static void main(String[] args){
for(){
return;
}
System.out.println();
}
原文地址:https://www.cnblogs.com/oldby/p/12564309.html