顺序结构:从上到下依次执行 前向引用
分支结构:根据条件选择的执行某段代码
1.if -else 结构
分支结构 if-else
1、格式1
if(条件表达式){
语句块
}
2、格式2
if(条件表达式){
语句块;
}else{
语句块;
}
3、格式3
if(条件表达式){
语句块;
}else if (条件表达式2){
语句块;
}.......
else{
语句块;
}
class IfElseTest3{
public static void main(String[] agrs){
int heartBeats=89;
if(heartBeats<60 && heartBeats>100){
System.out.println("你需要做进一步检查");
}
System.out.println("体检结束");
int score=61;
if(score==100){
System.out.println("奖励跑车");
}else if(score<=99&&score>80){
System.out.println("奖励山地");
}else if(score>=60 && score<=80){
System.out.println("奖励环球音程");
}else{
System.out.println("揍");
}
if-else嵌套
存入三个变量num1,num2,num3,对他们排序,从小到大使用if-else
class IfElseTest{
public static void main(String[] agrs){
int num1=30,num2=21,num3=44;
if(num1>=num2){
if(num3>=num1){
System.out.println(num2+","+num1+","+num3);
}else if(num3<=num2){
System.out.println(num3+","+num2+","+num1);
}else{
System.out.println(num2+","+num3+","+num1);
}
}else{
if(num3>=num2){
System.out.println(num1+","+num2+","+num3);
}else if(num3<=num1){
System.out.println(num3+","+num1+","+num2);
}else{
System.out.println(num1+","+num3+","+num2);
}
}
}
}
从开发经验上讲,没有嵌套超过3层的,超过了就要想是不是可以优化
switch-case结构
分支结构 switch-case
switch(表达式)
case(常量1):
//执行语句;
case(常量2):
//执行语句;
.......
default:
//执行语句
//break;
class SwitchCaseTest{
public static void main(String[] agrs){
int num=1;
switch(num){
case 0:
System.out.println("zero");
break;
case 1:
System.out.println("one");
break;
case 2:
System.out.println("two");
break;
case 3:
System.out.println("three");
break;
default:
System.out.println("other");
break;
//不加break,从one后面的都会被执行到-->case穿透,如果只想要one,就要把每句后面都加上break;
}
}
}
说明:switch 中的表达式只能是特定的数据类型 byte/short/int/char/枚举/String
case 后跟的常量,使用表达式与这些常量做相等的判断,不能进行范围的判断。
开发中,使用这个结构的情况都有限
开发者凡是可以使用switch-case结构的场景,都可以改写成if-else
如果开发中具体问题既可以使用switch-case,if-else,而且代码难度差不多,用switch-case,switch-case效率稍高。
break跳出当前结构
下面是执行流程图
以上就是流程控制中的分支结构啦