JavaSE基础03
顺序结构
代码从main方法进入,从上至下从左至右执行代码.
1、小括号优先级最高的 ,看到括号优先执行括号内的代码
2、代码没有遇到其他的分支或者循环结构
分支结构
if语句
if 的第一种格式: 只能对一种情况进行操作
if(关系表达式){
语句体;
}
执行流程:
1、计算关系表达式的结果
2、如果结果是true,执行语句体
3、如果结果是false,结束if语句执行if语句后面的代码
if 的第二种格式: 只能对两种情况进行操作
if(关系表达式){
语句体1;
}else{
语句体2;
}
执行流程:
1、计算关系表达式的结果
2、如果结果是true,执行语句体1
3、如果结果是false,执行语句体2
4、执行if结构后面的代码
if 的第三种格式: 可以对2种或者2种以上的情况进行判断
if(关系表达式1){
语句体1;
}else if(关系表达式2){
语句体2;
}else if(关系表达式3){
语句体3;
}else{
语句体n+1;
}
执行流程:
1、判断关系表达式1的结果,如果是true执行语句体1
2、关系表达式1的结果是false,判断关系表达式2的结果,如果结果是true执行语句体2,
3、关系表达式2的结果是false,判断关系表达式3的结果,如果结果是true执行语句体3,
。。。。。
4、若所有的else if、if判断的结果都是false,若有else执行else中的语句体n+1;
5、当if结构执行完毕执行if后面的语句
注意事项:
1、任何if结构都不会影响程序向下继续执行的
2、if中的大括号都可以省略,必须要求大括号内的代码只能有一句
3、else if结构可以在if结构中写无数个
4、所有的else都可以省略不写
switch语句
格式:
switch(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
case 值3:
语句体3;
break;
...
default:
语句体n+1;
break;
}
格式解释:
表达式:只能是 byte、short、char、int、String、Eumn
case :事件
值:等待表达式结果去比较的值 -> 比较是否相等
语句体:当表达式的结果和值相等的时候需要执行的语句
break : 看到break要执行了那么就会结束switch语句
default : 缺省的、默认的
->当所有的case值和表达式的结果都不相同那么有default就执行default中的语句体
执行流程:
1、计算表达式的结果
2、拿表达式的结果从上至下依次和case后的值进行比较
3、若匹配,执行当前case中的语句体,遇到break结束switch语句
4、所有的case都不匹配那么若有default执行default中的语句体n+1
注意事项:
1、case和case之间是并列关系
2、case后面的值不可以重复
3、可以不写default,default可以不写在最后
case穿透:
1、当case中没有编写break语句,当表达式匹配后进入case执行,会直接穿透下方的case继续执行
2、当多个case中有完全重复的代码,可以使用case穿透优化代码。
3、绝大多数情况都必须把break加上!!
循环结构
初始化语句:在定义一个控制循环的变量 int i = 0;
判断条件语句:是一句关系表达式,来确定循环是否继续执行 i < 10
控制条件语句:是控制循环变量的改变 i++
循环体语句:一些需要重复执行的代码
循环结构的执行流程:
1、初始化语句
2、判断条件语句
3、若结果是true 那么执行循环体语句
若结果是false 那么会结束循环
4、执行完循环体语句后执行控制条件语句
5、从第二步骤开始重复的执行 2 -> 3 -> 4
for循环
格式:
for(初始化语句1⃣️;判断条件语句2⃣️;控制条件语句4⃣️){
循环体语句3⃣️;
}
执行流程代码:
1 -> 2 -true-> 3 -> 4 -> 2 -true-> 3 -> 4 -> 2.....
-false> 结束循环 -false> 结束循环
⚠️:
1、当你不写for循环的大括号时,for循环只会控制离他最近的一句有效代码
2、我要循环n次 : n.fori -> 正序循环 n.forr
while循环
格式:
初始化语句1⃣️;
while(判断条件语句2⃣️){
循环体语句3⃣️;
控制条件语句4⃣️;
}
执行流程代码:
1 -> 2 -true-> 3 -> 4 -> 2 -true-> 3 -> 4 -> 2.....
-false> 结束循环 -false> 结束循环
while循环更适合不知道循环次数的循环代码
do…while循环
格式:
初始化语句1⃣️;
do{
循环体语句3⃣️;
控制条件语句4⃣️;
}while(判断条件语句2⃣️);
执行流程代码:
1 -> 3 -> 4 -> 2-true-> 3 -> 4 -> 2 -true-> 3 -> 4 -> 2.....
-false> 结束循环 -false> 结束循环
特点是:无论如何都会执行一次循环体语句
死循环
格式:
while(true){
死循环的代码;
}
注意:
1、死循环后面的代码是无法执行的
控制循环的关键字
break:中断
结束循环或者switch语句
continue:继续
结束本次循环继续下一次循环
注意:
1、break、continue都是基于条件判断来使用的
2、break可以用在循环和switch中、continue只能用在循环 -> break continue 都不可以单独使用!!
循环的别名
别名:循环
使用格式: break 别名; continue 别名;
生成随机数
步骤:
1、导包
import java.util.Random;
2、创建Random对象
Random 对象名 = new Random();
3、生成随机整数
int 变量名= 对象.nextInt(m);
m: int类型的数、int类型的变量
代表的是随机生成的整数的范围 -> [0,m)
变量名:接收的就是随机生成的这个整数