1996 年,计算机科学家 Bohm 和 Jacopini 证明了:任何简单或复杂的算法都可以由顺序结构、分支结构和循环结构这三种基本结构组合而成
它们的共同点是都包含一个入口和一个出口,它们的每个代码都有机会被执行,不会出现死循环
顺序结构
顺序结构是一种基本的控制结构,它按照语句出现的顺序执行操作
分支结构
分支结构
又被称为选择结构,根据条件成立与否来执行操作, 循环结构
循环结构是一种重复结构,如果条件成立,它会重复执行某一循环体,直到出现不满足的条件为止
if (判断条件1) { 执行语句1; } else if (判断条件2) { 执行语句2; } ... } else if (判断条件n) { 执行语句n; } else { 执行语句n+1; }
switch(表达式) { case 常量值1: 语句体1; break; case 常量值2: 语句体2; break; ... default: 语句体n+1; break; }
1.switch语句中,表达式的数据类型,可以是byte,short,int,char,enum(枚举),JDK7后可以接收字符串
2.在switch语句中,如果case的后面 不写break,将出现 穿透现象,也就是 不会再判断下一个case的值,直接向后运行,直到遇到break,或者整体switch结束
1.从使用效率上区分
从使用效率上区分,在对同一个变量的不同值作条件判断时,既可以使用 switch 语句,也可以使用 if 语句。使用 switch 语句的效率更高一些,尤其是判断的分支越多,越明显
2.从实用性上区分
从语句的实用性角度区分,switch 语句不如 if 条件语句,if 语句是应用最广泛和最实用的语句
一般情况下,对于判断条件较少的,可以使用 if 条件语句,但是在实现一些多条件的判断中,最好使用 switch 语句
for(表达式1;表达式2;表达式3){ 语句体 }
注意表达式2,表达式3和语句块的运行顺序,影响后期的输出结果
while( 布尔表达式 ) { //循环内容 }
循环中的条件布尔表达式 永远为true,循环永不结束,可用于制作死循环
do { //代码语句 }while(布尔表达式);
1.while后面有分号;,必须写,否则报错
2. do…while 循环至少会执行一次,即使将循环条件直接写成false
控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以继 续使用,如果你想继续使用,就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消 失,能够提高内存的使用效率。
在已知循环次数的时候使用推荐使用for,循环次数未知的时推荐使用while。
无论是分支结构还是循环结构,使用嵌套可以将多个不同的条件叠加,使输出结果更加准确快捷
break
continue