流程控制语句,程序设计中有三种流程结构,分别是顺序结构、分支结构、循环结构,顺序结构是从上往下依次执行;分支结构有两种分支语句,if-else和switch-case两种分支语句;循环结构,有for、while、do-while三种循环语句。
分支语句,if-else条件判断结构,有三种结构
单分支条件判断:if(条件表达式){
语句块;
}
双分支条件判断:if(条件表达式){
语句块1;
}else{
语句块2;
}
多分支条件判断:if(条件表达式1){
语句块1;
}else if(条件表达式2){
语句块2:
}
…
}else if(条件表达式n){
语句块n;
}else{
语句块n+1;
}
P43从键盘中获取数据:
- 引入java包,import java.util.Scanner
- 使用这个类,创建一个实例对象 Scanner scan = new Scanner(System.in);
- 使用scan.nextXXX()方法读取数据,如int num1 = scan.nextInt(); String str1 = scan.next();
- 最后要进行关闭,scan.close();
P44如何获取随机数,使用Java的API: Math类的random(),random()调用过后,会返回一个[0.0, 1.0)范围的double型随机数。如果要获取一个[a, b]范围内的随机整数,可以使用
(int)(Math.random() * (b – a + 1) + a则会生成要求范围的随机数。
具体使用方法为 double d1 = Math.random();
P55,switch-case选择结构,基本语法如下
执行流程图如下
看成switch里只让放int,那几种数据类型会转成int。开发中使用switch-case的情况有限,下面是一个案例
开发中,凡是可以使用switch-case的结构都可以转换为if-else结构。反之,不成立。如果既可以使用switch-case,又可以使用if-else,建议使用switch-case,因为其效率稍高。
循环语句,循环语句具有在某些条件满足的情况下,反复执行特定代码的功能。
循环结构四要素:
- 初始化部分
- 循环条件部分
- 循环体部分
- 迭代部分
for循环的基本语法:
for(1初始化部分;2循环条件部分;4迭代部分){
3循环体部分;
}
执行过程为:1234 234 234
Java的流程控制语句和C\C++的流程控制语句差别不大。
while循环,基本语法如下
for和while循环可以相互转换
do-while循环,语法格式如下
对比三种循环结构,三种循环都有四个要素:1、循环变量的初始条件2、循环条件3、循环体4、循环变量的修改的迭代表达式。
从循环次数角度分析,do-while至少执行依次,for和while则需判断循环条件是否成立,然后决定是否执行循环。
如何对这三种循环进行选择,有明显循环次数的需求,使用for循环;遍历没有明显循环次数的需求,选择while循环;循环体语句至少执行一次,可以考虑使用do-while循环,本质上三种循环可以相互转换。
无限循环,语法格式:while(true),for(;;),适用场景,不确定循环,要根据循环体决定循环的结束,使用break结束循环。避免出现死循环!
嵌套循环,是指一个循环结构A的循环体是另一个循环结构B。
技巧:从二维图形的角度看,外层循环控制行数,内层循环控制列数。
开发经验:实际开发中最多见到的嵌套循环是两层。超过三层要重新梳理业务逻辑,重新思考算法的实现。
例如两个for嵌套循环格式:
break和continue的说明,break是结束当前循环,continue是跳过本次循环。
可以带标签使用,终止某个语句块的执行
P56谷粒记账项目,其中要学会使用已经写好的方法,要自己写一遍这个项目。这个项目的重点在哪?逻辑复杂,代码量大,要多写几遍。
P57,项目开发流程
交流和沟通能力很重要
这一章讲了什么,流程控制结构:顺序结构、分支结构、循环结构,关键字break在开发中用的比较多