:::info
💡 根据 遗忘曲线:如果没有记录和回顾,6天后便会忘记75%的内容
读书笔记正是帮助你记录和回顾的工具,不必拘泥于形式,其核心是:记录、翻看、思考
:::
流程控制语句概览
在默认程序中是顺序结构,从上往下依次执行;用思维导图,结构化核心概念。
分支语句
if语句(判断条件最终必须为:布尔类型值)
1 简单if语句格式:
语句格式:
if (判断条件){
语句体; //判断条件成立执行语句体;
}
int nub1 = 1;
int nub2 = 2;
if(nub1>nub2){
System.out.println("执行了语句体"); //判断条件为false,此语句不执行;
}
2 if…else语句格式
语句格式:
if (判断条件){
语句体1; //判断条件成立执行语句体1;
}else{
语句体2; //判断条件不成立执行语句体2;
}
int nub1 = 1;
int nub2 = 2;
if(nub1>nub2){
System.out.println("执行了语句体1"); //判断条件为false,此语句不执行体;
}else{
System.out.println("执行了语句体2"); //判断条件为false,执行此语句体;
}
3 if…else if…else…语句格式
语句格式:
if (判断条件1){
语句体1; //判断条件成立执行语句体1;
}else if(判断条件2){
语句体2; //判断条件1不成立,判断条件2成立,执行语句体2;
}else{
语句体3; //判断条件1和2都不成立执行语句体3;
}
/*
考试奖励:
分数>=90:奖励自行车一辆
90>分数>=80:奖励游乐园一日游
80>分数:一顿狂揍
*/
public class IfTest {
public static void main(String[] args) {
int chengji;
Scanner sc = new Scanner(System.in);
System.out.println("请输入成绩:");
chengji = sc.nextInt();
if (chengji <=100 && chengji>=0){
if (chengji>=90){
System.out.println("恭喜!奖励自行车一辆!");
}else if (chengji>=80 && chengji<90){
System.out.println("恭喜!奖励游乐园一日游!");
}else{
System.out.println("来吧一顿接受狂揍!");
}
}else{
System.out.println("成绩输入有误!");
}
}
}
switch语句
switch语句格式:
switch(){
case 1:
语句体1;
break;
case 2:
语句体2;
break;
case 3:
语句体3;
break;
.
.
.
default:
默认值语句体;
break;}
1 注意事项:jdk特性与week的取值范围
- 基本类型:byte、short、int、long
- 引用类型:jdk5开始,允许枚举类型;jdk7开始,允许String
- jdk14开始允许,一个case 后跟多个值:case 1,2,3:
- if与switch选用:范围性的判断用if;固定值判断用switch;
switch(week){
case 1:
// 语句体1;
break;
case 2:
// 语句体2;
break;
case 3:
// 语句体3;
break;
default:
// 默认语句体;
break;
}
2 case穿透(可以优化代码)
case穿透示例:如果有多个重复的语句体可以使用case穿透
switch(week){
case 1:
case 2:
case 3:
//重复语句体;
break;
default:
break;
}
3 jdk14以后新特性(可以优化代码)
case穿透示例:如果有多个重复的语句体可以使用case穿透
switch(week){
case 1,2,3:
//重复语句体;
break;
default:
break;
}