4.流程控制
MODULE 4 流程控制
1.会使用Scanner和Random
2.会使用swich以及知道case的穿透性
3.会使用if
4.会使用for循环,while循环,嵌套循环
一、键盘录入Scanner
1.概述:是java定义好的类
2.作用:将数据通过键盘录入的形式放到代码中参与运行
3.位置:java.util
4.使用:
(1)导包:import java.util.Scanner
(2)创建对象:Scanner 变量名 = new Scanner(System.in);
(3)调用方法:变量名.nextInt() 输入整数int型的
变量名.next() 输入字符串String型的
5.变量名.next():录入字符串 -> 遇到空格和回车结束录入
变量名.nextLine():录入字符串 -> 遇到回车就结束录入了
二、Random随机数
1.概述:java自带的一个类
2.作用:可以指定范围内随机一个整数
3.位置:java.util
4.使用:
(1)导包:import java.util.Random
(2)创建对象:
Random 变量名 = new Random()
(3)调用方法,生成随机数:
变量名.netInt() -> 在int的取值范围内随机一个整数
5.在指定范围内随机一个数:
nextInt(int bound) -> 在0到(bound-1)
(1)nextInt(10) -> 0到9
(2)在1到10之间随机一个数:nextInt(10)+1 -> (0-9)+1 -> 1到10
(3)在1到100之间随机一个数:nextInt(100)+1 -> (0-99)+1 -> 1到 100
(4)在100到999之间随机一个数:nextInt(900)+100 -> (0-899)+1 -> 100 到999
三、swich(选择语句)
(一)swich基本使用
1.格式:
swich(变量){
case 常量值1;
执行语句1;
break;
case 常量值2;
执行语句2;
break;
case 常量值3;
执行语句3;
break;
case 常量值4;
执行语句4;
break;
...
defult:
执行语句n;
break;
}
2.执行流程:
用变量接收的值和下面case后面的常量值匹配,匹配上哪个case就执行哪个 case对应的执行语句,如果以上所有case都没有匹配上,就走default对应 的执行语句n
3.break关键字:代表的是结束switch语句
4.注意:switch能匹配什么类型的数据:
byte short int char 枚举类型 String类型
(二)case的穿透性
1.如果没有break,就会出现case的穿透性,程序就会一直往下穿透执行,直到 遇到了break或者switch代码执行完毕了,就停止了
四、分支语句
(一)if的第一种格式
1.格式:
if(boolean表达式){
执行语句;
}
2.执行流程:
先走if后面的boolean表达式,如果是true,就走if后面大括号中的执行 语句,否则就不走
3.注意:
if后面跟的是boolean表达式,只是要是结果为boolean型的,都可以放在 小括号中,哪怕直接写一个true或者false
(二)if的第二种格式
1.格式:
if(boolean表达式){
执行语句1;
}else{
执行语句2;
}
2.执行流程:
(1)先走后面的boolean表达式,如果是true,就走if后面的执行语句1
(2)否则就走else后面的执行语句2
(三)if的第三种格式
1.格式:
if(boolean表达式){
执行语句1
}else if{
执行语句2
}else if{
执行语句3
}...else{
执行语句n
}
2.执行流程:
从if开始往下挨个判断,哪个if判断结果为true,就走哪个if对应的执 行语句,如果以上所有的判断都是false,就走else对应的语句n
3.使用场景:两种以上的判断
switch和if的区别:debug
(1)switch:会直接跳到相匹配的case
(2)if:从上到下挨个判断 -> 实际开发用得较多
五、循环语句
当我们发现一件事或一段代码反复执行,考虑用循环语句
(一)for循环
1.格式:
for(初始化变量;比较;步进表达式){
循环语句 -> 那段代码循环执行,就放哪段代码
}
2.执行流程:
(1)先走初始化变量
(2)比较,如果是true,走循环语句,走步进表达式(初始化的变量的值 进行变化)
(3)再比较,如果还是true,继续走循环语句,走步进表达式
(4)再比较,直到比较为false,循环结束
快捷键:次数.fori
(二)while循环
1.格式:
初始化变量;
while(比较){
循环语句;
步进表达式
}
2.执行流程:
(1)初始化变量
(2)比较,如果是true,就走循环语句,走步进表达式
(3)再比较,如果还是true,继续走循环语句,继续走步进表达式
(4)再比较,直到比较为false,循环结束
(三)do...while循环(了解)
1.格式:
初始化变量;
do{
循环语句;
步进表达式
}while(比较);
2.执行流程:
(1)初始化变量
(2)走循环语句
(3)走步进表达式
(4)判断,如果是true,继续循环,直到比较为false,循环结束
3.特点:
至少循环一次
(四)循环控制关键字
1.break:
(1)在switch中代表结束switch语句
(2)在循环中代表结束循环
2.continue:
结束当前本次循环,直接进入下一次循环,直到条件为false为止
(五)死循环
1.概述:
一直循环
2.什么条件下一直循环:
比较条件一直是true
(六)嵌套循环
1.概述:循环中还有循环
2.执行流程:
先执行外层循环,再进入内层循环,内层循环就一直循环,直到内层循环结束, 外层循环进入下一次循环,直到外层循环结束,整体结束