流程控制概述 :
在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。也就是说程序的流程对运行结果有直接的影响。所以,我们必须清楚每条语句的执行流程。而且,很多时候我们要通过控制语句的执行顺序来实现我们要完成的功能。
顺序结构:
程序从上到下逐行地执行,中间没有任何判断和跳转。
顺序结构是程序中最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执 行,程序中大多数的代码都是这样执行的。总的来说:写在前面的先执行,写在后面的后执行。
分支结构 :
1. 根据条件,选择性地执行某段代码。
2. 有 if,if…else 和 switch 三种基本分支语句。
3. 分支语句之间可以嵌套。
switch:
switch(表达式)中表达式的值必须是下述几种类型之一: byte, short, char, int, 枚举(jdk 5.0),String (jdk 7.0);
case子句中的值必须是常量,不能是变量名或不确定的表达式值;
default子句是可任选的。同时,位置也是灵活的。当没有匹配的case时,执行default
switch和if语句的对比:
如果判断的具体数值不多,而且符合byte、short 、char、 int、 String、 枚举等几种类型。虽然两个语句都可以使用,建议使用swtich语句。因为效率稍高。
其他情况:对区间判断,对结果为boolean类型判断,使用if, if的 使用范围更广也就是说,使用switch-case的,都可以改写为if-else。反之不成立;
循环结构 :
1. 根据循环条件,重复性的执行某段代码。
2. 有 while、do…while、for 三种循环语句。
3. 注:JDK1.5 提供了 foreach 循环,方便的遍历集合、数组元素。
4. 循环之间可以任意嵌套,但一般嵌套不要超过三层。
循环语句四个组成部分:
1. 初始化部分
一条或者多条语句,这些语句完成一些初始化操作
2. 循环条件部分
这是一个 boolean 表达式,这个表达式能决定是否执行循环体
3. 循环体部分
这个部分是循环体语句,也就是我们要多次做的事情
4. 控制条件语句
在一次循环体结束后,下一次循环判断条件执行前执行。通过用于控制循环条件中的变量,使得循环在合适的时候结束。
do…while 循环和 while 循环的区别
1) do…while 循环至少会执行一次循环体;
2) while 循环只有在条件成立的时候才执行循环体
continue语句:
continue只能使用在循环结构中
continue语句出现在多层嵌套的循环语句体中时,可以通过标签指明要跳过的是哪一层循环
说明:
break只能用于switch语句和循环语句中。
二者功能类似,但continue是终止本次循环,break是终止本层循环,
break、continue之 后不能有其他的语句,因为程序永远不会执行其后的语句。
很多语言都有goto语句,goto语句可以随意将控制转移到程序中的任意一条语句上,然后执行它。但使程序容易出错。Java中的break和continue是不同于goto的。
return:
return:并非专门用于结束循环的,它的功能是结束一个方法。当一个方法执行到一个return语句时,这个方法将被结束。
与break和continue不同的是,return直 接结束整个方法,不管这个return处于多少层循环之内.