分支结构
1.if语句
-
注意事项:
一般用第二种
-
格式:
//1 if(条件){语句}
流程:1确定条件结果true or false
2执行语句或不执行.
特点:只有一种情况判断
eg:判断是否是偶数
//2 if(条件){ 语句1 }else{ 语句2 }
流程:1确定条件结果true or false
2true执行1,false执行2
特点:解决两种情况需求
eg:判断奇偶性
//三元运算 (条件判断) ? 语句1 :语句2;
//3 if(条件1){ 语句1 }else if(条件2){ 语句2 }else{ }
执行流程:1先判断条件1确定执行语句1还是其他
2再判断条件2确定执行2还是其他
3......
特点:解决三种及以上情况
eg:判断两个数的大小关系>=<
public class IfDemo(){ public static void main(String[] args){ int a = 3; int b = 4; if (a > b){ System.out.println("a > b"); }else if(a == b){ System.out.println("a = b"); }else{ System.out.println("a < b"); } } }
-
注意事项:在部分场景中else可以不写但不推荐。
-
2.switch语句
switch (数据值) {
case 数据值1:
语句体1;
break;
case 数据值2: 语句体2; break;
......
case 数据值n: 语句体n; break;
default: 语句体n+1; break;
}
//case : 待选择的数据
//default//: 最后一种。
//break : 终止分支或循环的语句。
执行流程: 1.先确定switch语句()中的数据值是多少; 2.将数据值和数据值1进行匹配,看是否匹配成功; 3.如果匹配成功,执行语句体1,执行break语句,switch结束; 如果匹配失败,将数据值和数据值2进行匹配,看是否匹配成功; ...... 4.当数据值和所有case后的数据值都没有匹配成功,执行default中语句体n+1,执行break语句, switch结束;
-
注意事项:1数值的基本数据类型只支持:byte,short,char,int
2jdk5以后支持Enum枚举。
3jdk7以后支持String类型。
4default要写,可以增加代码的可阅读性。
5不推荐使用switch,除非特殊情况。
6switch运行效率比if语句高。
-
附eg:
//分支结构 //if: /*1. x和y的关系满足如下: x>=3 y = 2x + 1; -1<x<3 y = 2x; x<=-1 y = 2x - 1; 根据给定的x的值,计算出y的值并输出。 */ /* 2.练习:通过指定考试成绩,判断学生等级 90-100 优秀 80-89 好 70-79 良 60-69 及格 60以下 不及格 */ //switch: /*需求:定义一个月份,输出该月份对应的季节。 一年有四季````` 3,4,5 春季 6,7,8 夏季 9,10,11 秋季 12,1,2 冬季 分析: A:指定一个月份 B:判断该月份是几月,根据月份输出对应的季节 if switch */