java课件第4章控制流_第1页
java课件第4章控制流_第2页
java课件第4章控制流_第3页
java课件第4章控制流_第4页
java课件第4章控制流_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第四章控制流4.1语句和分程序4.2if-else4.3switch4.4while和do-while4.5for4.6标号4.7break4.8continue4.9return4.10为何没有goto语句?4.11小结第四章控制流Java中的基本语句是:表达式语句和说明语句表达式语句:并非所有表达式都可成为语句,只有下列类型表达式通过尾部增加一个终止性的分号可构成语句:赋值表达式,即那些包含=或op=运算符的表达式++和--的前置或后置形式方法调用(无论是否有返回值)对象创建表达式,即那些使用new创建一个对象的表达式说明语句:说明一个变量并对其值进行初始化。分程序 用“{”和“}”括起来的零条或多条语句。

注意:尽管分程序是复合的,但仍是一条语句

4.1语句和分程序条件语句if-else一个else子句被归并到最靠近的没有else子句的if中。4.2if-elseif(boolean-expression)statement1

elsestatement2多分支语句switch:switch语句求一个整数表达式的值,根据该值在紧接的分程序内列出的case标号中寻找一个相匹配的,如果找到了一个合适的case标号,控制转移到紧接该标号的第一条语句。如果找不到,控制转移到紧接default标号的第一条语句。如果没有default标号,则跳过整个switch语句。4.3switchswitch(expression){casevalue1:statement1; break;casevalue2:statement2; break;…………casevalueN:statemendN; break;default:defaultStatement;}表达式expression的返回值类型必须是这几种类型之一:int,byte,char,short。case子句中的值value必须是常量,而且所有case子句中的值应是不同的。default子句是任选的。break语句用来在执行完一个case分支后,使程序跳出switch语句,即终止switch语句的执行。4.3switchswitch(expression){casevalue1:statement1; break;casevalue2:statement2; break;…………casevalueN:statemendN; break;default:defaultStatement;}循环语句while

首先求布尔表达式的值,若为true,则重复执行statement(当然,可以是一个分程序)直到布尔表达式计算值为false。循环语句do-while statement执行后求布尔表达式的值,若为true,重复执行statement。4.4while和do-whilewhile(boolean-expression)statementdostatementwhile(boolean-expression);循环语句for:for语句用于在一定范围的一组值上从头到尾进行循环

for语句执行时,首先执行初始化操作,然后判断终止条件是否满足,如果满足,则执行循环体中的语句,最后执行迭代部分。完成一次循环后,重新判断终止条件。初始化、终止以及迭代部分都可以为空语句(但分号不能省),三者均为空的时候,相当于一个无限循环。在初始化部分和迭代部分可以使用逗号语句,来进行多个操作。逗号语句是用逗号分隔的语句序列。4.5forfor(init-expr;boolean-expr;incr-expr)statementfor(i=0,j=10;i<j;i++,j--){ ……}可对语句加标号。标号特别使用在分程序和循环上。标号放在一条语句前面,形式如下:

带有标号的分程序对于break和continue是有用的

标号的作用:在嵌套循环中将控制直接转移到外层循环。4.6标号label:statementbreak:立即退出任一分程序。终止最内层的switch、for、while或do-while。在Java中,可以为每个代码块加一个括号,一个代码块通常是用大括号{}括起来的一段代码。加标号的格式如下:

BlockLabel:{codeBlock}break语句的第二种使用情况就是跳出它所指定的块,并从紧跟该块的第一条语句处执行。

breakBlockLabel;4.7breaka:{…… //标记代码块ab: {…… //标记代码块bc: {……//标记代码块c

breakb;

…… //willnotbeexecuted }…… //willnotbeexecuted }…… //executefromhere}continue语句用来结束本次循环,跳过循环体中下面尚未执行的语句,接着进行终止条件的判断,以决定是否继续循环。对于for语句,在进行终止条件的判断前,还要先执行迭代语句。它的格式为:continue;也可以用continue跳转到括号指明的外层循环中,这时的格式为:continueouterLable;4.8continueouter:for(inti=0;i<10;i++){ //外层循环inner: for(intj=0;j<10;j++){ //内层循环

if(i<j){ ……

continueouter; } …… } ……}return语句从当前方法中退出,返回到调用该方法的语句处,并从紧跟该语句的下一条语句继续程序的执行。返回语句有两种格式:

returnexpression return4.9returngoto在过程式语言中的主要用途以及Java相应的处理办法相比较如下:用途goto在过程式语言中的用途Java相应的处理办法1从内层循环中控制外层循环使用带有标号的break和continue语句2当发现一个回答或错误时,跳过不在循环中的代码块的其余部分使用带有标号的break3在一个方法或代码块退出之前执行清理代码使用带有

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论