-
顺序结构
代码自上而下按顺序执行 - 选择结构
⇨根据不同情况,执行对应代码
⇨if分为单分支,双分支和多分支
⇨if判断语句
⇨switch判断语句
⇨三元运算符
⇨范围判断使用if选择结构,变量相关的数值判断使用switch选择结构 - 循环结构
⇨满足特定条件下,重复的执行某个操作(代码段),直到条件不满足为止
⇨循环的三要素:初始值(i);循环条件;自增或自减。(只是为了方便理解, 并不适用于所有循环)
⇨i(初始值)的作用:作为循环的初始值;贯穿整个循环,并记录每次循环的当前值
⇨Break用在循环中表示跳出当前循环结构。Break之后的语句不执行;如果有多层 循环(循环嵌套)的情况,break只跳出一层循环。
⇨如果已知循环次数,使用for循环好过于while循环,但如果循环次数未知,这时 使用while循环会更好。
⇨Continue表示跳过本次循环,进入下一次循环,continue之后的语句不执行,当 continue在while或do...while中使用时,需要把i++放在前面。 - while循环
⇨语法:
while(表达式){
执行语句;//循环体
}
⇨首先求解表达式(是否满足循环条件),如果表达式成立,则执行while花括号里的循环语句,执行完毕,会继续求解表达式,如果表达式成立,继续循环,否则跳出循环。 - do...while循环
⇨与while的区别在于,while先求解表达式,然后再判断是否执行循环语句(先判断,再执行);而do...while是先执行一次循环语句(无论在什么情况下都绝对会执行最少一次循环语句),然后再判断表达式是否成立,如果成立,就会继续循环,反之则跳出(先执行,再判断)。
⇨语法:
do{
执行语句
}while(表达式);
⇨一般情况下,更倾向于使用while循环语句,如果while在处理循环逻辑比较别扭时,使用do...while语句。 - for循环
⇨语法:
for(初始值;循环条件;自增/自减){
执行语句;
} - if判断语句
⇨表达式可以接收任意数据类型作为表达式,然后会进行隐式转换为布尔值,当布尔值为true就会执行语句。
⇨单分支(只有一个选择)语法:
If(表达式){
执行语句;
}
//如果表达式成立(true),则执行{ }中的语句,否则不做任何操作
⇨双分支(只有两个选择,且必须选择其中的一个)语法:
If(表达式){
执行语句1;
}else{
执行语句2;
}
//如果表达式成立(true),则执行{ }中的执行语句1,否则执行else后{ }中的执行语句2
⇨多分支语法:
If(表达式1){
执行语句1;
}else if(表达式2) {
执行语句2;
}else{
执行语句3
}
//首先求解表达式1(判断表达式1是否成立),成立的话执行语句1,否则求解表达式2,如果成立执行语句2,否则执行语句3
⇨选择结构的嵌套在满足某个条件的情况下,进行二次判断,比如满足表达式1,在表达式1里在进 行嵌套一个条件(表达式2),即为条件依赖,只有满足表达式1才有资格判断是 否满足表达式2 - switch判断语句
⇨多分支选择结构Switch(表达式){
Case 常量1:语句;break;
Case 常量2:语句;break;
Case 常量3:语句;break;
Case 常量4:语句;break;
Default:语句;break;
}
⇨表达式可以接受变量和常量,表达式和case中的常量做全等比较,如果全等就会执行case之后的语句,遇到break跳出当前选择结构,如果不全等则会继续向下比较,直到遇到default为止。
⇨break为跳出当前选择结构,如果没有break,则继续执行下面分支的的语句并且不会进行判断,这种穿透效果可以应用于常量不同当语句相同的情况,例如1-5执行语句一样,就可以1-4不书写执行语句并且不添加break,第五句添加需要执行的语句和break即可实现。
⇨default类似于else,即为以上所以情况之外的情况。
⇨Switch中可以使用条件表达式,由于条件表达式结构结果只有true和false,,所以switch的表达式为true或false既可。 -
三元运算符
⇨三元运算符又叫三目运算符,只能进行简单的双分支判断,语法:
表达式1 ?表达式2 :表达式3;
首先求解表达式1,如果成立(true),则执行表达式2,否则(false),则执行表达式3
⇨var max = a>=b ? a:b;如果a>=b为真,则a=a,否则a=b