第二部分:流程控制语句
流程控制语句结构分类:①顺序结构②分支结构③循环结构
分类
①顺序结构
程序从上到下执行
②分支结构
|--if语句
|--单分支
if(一般都是一个表达式,但是最终只要有值就行,并且,这个值最终会转化为boolean)
代码块
}
|--双分支
if(一般都是一个表达式,但是最终只要有值就行,并且,这个值最终会转化为boolean)
代码块;
}else{
代码块;
}
单分支|双分支小结:
单分支和双分支其实都可以理解为双分支,也就是把一件事分为两种情况去处理,符合条件和不符合条件。单分支是处理符合条件的,不符合条件的不管
多分支
把一件事情分为多种情况去考虑,面中情况要去处理
|--switch case分支语句
(其实就是if多分支的变种,为了代码可读性好一些)
语法
switch(有值的东西,最后这里面是一个值,不会进行转化){
case 值:
代码块;
(break;)
case 值:
代码块;
(break;)
。。。
}
--其中case是代表的标记,它不是我们的代码语句,只能用来做对比用的
--代码块才是真正要执行的代码,如果switch括号中的值和case标号后面的值相等,那么就会执行对应的代码块
--break只能出现在switch和循环中.有两个作用,第一:在switch中代表跳出switch语句.第二:在循环中,代表跳出离它最近的一层循环
switch语句的执行过程
|--先求出小括号当中的值
|--然后会拿这个值从上到下和所有case后面的值进行比对,如果比对成功就执行匹配的下的代码,如果没有break;那么执行完匹配的代码后还会继续向下,下面的代码都执行一遍之后结束switch循环语句
注意:
switch case里面的的判断是否和case值相等的相等都是使用的全等表达式(===)判断的
什么时候使用三元表达式?
当双分支语句,每个分支里面只有一个表达式的时候,改写成三元表达式。ps(能使用三元表达式的优先使用三元表达式)
③循环结构
|--for循环
语法
for(①一般初始化表达式;②一般都是条件表达式;③自增自减表达式){
④循环体(代码块);
}
执行过程
第一次循环:
首先执行①初始化表达式
接着执行②条件表达式
然后执行④循环体
最后执行③自增自减表达式
非第一次循环:
执行②条件表达式
执行④循环体
最后执行③自增自减表达式
注意
for循环初始化表达式只是在一次循环的时候
执行,后面的循环全部不执行
for循环当中的循环变量i有两个作用
1.控制循环的次数
2.变量同时也是有值的,在循环外面也是可以使用的,但是其值是跳出循环的i的值
嵌套循环
|--while循环和do-while循环
|--while
语法
①定义变量
while(②条件表达式){
③代码块;
④自增自减表达式;
}
执行顺序
①-->②-->③-->④-->②-->③-->④-->②...
|--do-while
语法
①变量的声明
do{
②代码块
③自增自减表达式
}while(④条件表达式)
执行顺序
①-->②-->③-->④-->②-->③-->④
两者之间的区别
--while循环先判断条件是否为真,再决定是否执行循环体。如果为证,就执行,为假就不会执行,一次都不会执行
--do-while先执行一次循环体,再去判断条件表达式,条件为假不会执行循环体,但是do-while无论条件是否为真,都会至少执行一次循环体
什么时候用for,什么时候用while
for循环一般是由明显的循环次数,这时候用for循环好一点
while循环一般没有明显的次数,用它最合适
break和continue关键字
continue
结束当此循环(continue以下的代码不会执行),从下次开始继续
break
在循环当中,跳出离它最近的一层循环,如果循环是多层要注意
注意:
break和continue后面不能写代码!!!
注意:
在循环内部var一个变量,每次执行循环体内的代码块都是赋值的初始值