2.3控制语句
Java程序通过控制语句来执行程序流,完成一定的任务。程序流是由若干个语句组成的,语句可以是单一的一条语句,如c=a+b,也可以是用大括号{}括起来的一个复合语句。Java中的控制语句有以下几类: ◇ 分支语句:if-else, switch ◇ 循环语句:while, do-while, for ◇ 与程序转移有关的跳转语句:break, continue, return ◇ 例外处理语句:try-catch-finally, throw ◇ 注释语句://,/* */, /** */
2.3.1 分支语句
分支语句提供了一种控制机制,使得程序的执行可以跳过某些语句不执行,而转去执行特定的语句。
1.条件语句 if-else
if(boolean-expression) statement1; [else statement2;]
2.多分支语句 switch
switch (expression){ case value1 : statement1; break; case value2 : statement2; break; ………… case valueN : statemendN; break; [default : defaultStatement; ] }
◇ 表达式expression的返回值类型必须是这几种类型之一:int,byte,char,short。 ◇ case子句中的值valueN必须是常量,而且所有case子句中的值应是不同的。 ◇ default子句是可选的。 ◇break语句用来在执行完一个case分支后,使程序跳出switch语句,即终止switch语句的执行(在一些特殊情况下,多个不同的case值要执行一组相同的操作,这时可以不用break)。
2.3.2 循环语句
循环语句的作用是反复执行一段代码,直到满足终止循环的条件为止。Java语言中提供的循环语句有: ◇ while语句 ◇ do-while语句 ◇ for语句
1.while语句
[initialization] while (termination){ body; [iteration;] }
2.do-while语句
[initialization] do { body; [iteration;] } while (termination);
3.for语句
for (initialization; termination; iteration){ body; }
◇ for语句执行时,首先执行初始化操作,然后判断终止条件是否满足,如果满足,则执行循环体中的语句,最后执行迭代部分。完成一次循环后,重新判断终止条件。 ◇ 初始化、终止以及迭代部分都可以为空语句(但分号不能省),三者均为空的时候,相当于一个无限循环。 ◇ 在初始化部分和迭代部分可以使用逗号语句,来进行多个操作。逗号语句是用逗号分隔的语句序列。 for( i=0, j=10; i<j; i++, j--){ …… }
2.3.3 跳转语句
◇ break语句 ◇ continue语句 ◇ 返回语句return
1.break语句
◇ 在switch语中,break语句用来终止switch语句的执行。使程序从switch语句后的第一个语句开始执行。 ◇ 在Java中,可以为每个代码块加一个括号,一个代码块通常是用大括号{}括起来的一段代码。加标号的格式如下: BlockLabel: { codeBlock } break语句的第二种使用情况就是跳出它所指定的块,并从紧跟该块的第一条语句处执行。例如: break BlockLabel; break语句 a:{…… //标记代码块a b:{…… //标记代码块b c:{…… //标记代码块c break b; …… //此处的语句块不被执行 } …… /此处的语句块不被执行 } …… //从此处开始执行 }
2.continue语句
continue语句用来结束本次循环,跳过循环体中下面尚未执行的语句,接着进行终止条件的判断,以决定是否继续循环。对于for语句,在进行终止条件的判断前,还要先执行迭代语句。它的格式为: continue;
也可以用continue跳转到括号指明的外层循环中,这时的格式为 continue outerLable;
例如: outer: for( int i=0; i<10; i++ ){ //外层循环 inner: for( int j=0; j<10; j++ ){ //内层循环 if( i<j ){ …… continue outer;
} …… } …… }
3.返回语句return return语句从当前方法中退出,返回到调用该方法的语句处,并从紧跟该语句的下一条语句继续程序的执行。返回语句有两种格式: return expression ; return;
return语句通常用在一个方法体的最后,否则会产生编译错误,除非用在if-else语句中
2.3.4 例外处理语句
包括try,catch,finally,throw语
|