




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1教学目录决策3.1逻辑运算符3.2条件运算符3.3
Switch语句3.4变量作用域3.5
循环3.6断言3.72教学内容熟练掌握Java语言中的流程控制结构。掌握Java中选择结构的基本原理及使用方法。掌握Java中循环结构的基本原理及使用方法。3教学重点掌握顺序流程、分支流程语句,并要求学生能灵活应用。了解和掌握变量作用域,循环流程、与程序转移有关的其它语句。4例1:打印一个3x4的矩阵classDrawRect{ publicstaticvoidmain(String[]args) { System.out.println(“****"); System.out.println(“****"); System.out.println(“****"); }}3.1决策5例2:上一个例子的变形classDrawRect
{ publicstaticvoidmain(String[]args) {
System.out.println(“*");
System.out.println(“*");
System.out.println(“*");
System.out.println(“*\n");
System.out.println(“*");
System.out.println(“*");
System.out.println(“*");System.out.println(“*\n");System.out.println(“*");System.out.println(“*");System.out.println(“*");System.out.println(“*"); }}问题:如何作出决策,提高程序的执行效率?6分析问题找出最佳解决方案以上两种方法是初学者最容易想到的,但做了很多重复的工作,会使程序变得很繁琐,结构也不够清晰。在工作量少的时候似乎没那么明显,但当需要打印的矩阵比较大的时候就会显现出来(如:打印一个100x60的矩阵)。想解决这个问题我们可以通过循环来解决,讲到循环就要先介绍一下程序的结构化设计。7程序设计的三种结构顺序结构循环结构选择结构
循环结构与选择结构所使用的语句又叫作流程控制语句,作用是改变程序的执行顺序。83.1决策比较Java提供6种关系运算符:<,<=,>,>=,==,!=注意:“等于”关系运算符是两个等号“==”,而不是一个等号“=”(赋值运算符)。例:intx=3,y=4;inta=1,b=5;booleanstate=x-y<a+b;93.1决策if语句expression==true语句2语句1if(expression)语句1;语句2;103.1决策if语句expression==true语句2语句块语句块:用花括号括起来的语句。if(expression){statment1;statment2;……}语句2;左侧的语句也以下语句有什么不同?if(expression)statment1;statment2;……语句2;11提示:合理采用缩进格式书写代码坚持用左右大括号将if条件括起来的习惯,即使一条语句也括。else子句if(expression){statement1;}else{statement2;}next_statement;练习:Lt_1.java3.1决策123.1决策if语句的嵌套形式if(<条件1>)
if(<条件2>)<语句1>; else<语句2>;else
if(<条件3>)<语句3>; else<语句4>;若条件1成立,则执行哪一组IF语句?若条件1不成立,则执行哪一组IF语句?133.1决策if语句的嵌套形式if(<条件1>)<语句1>;elseif(<条件2>)<语句2>;elseif(<条件3>)………..else<语句n>;什么情况下会执行到语句2,什么情况下会执行到语句n?语句1与语句2等是否可以都执行?else总是和距它最近的if配对143.2逻辑运算符符号全名&逻辑与(logicalAND)&&条件与(conditionalAND)|逻辑或(logicalOR)||条件或(conditional)OR!逻辑非(logicalNOT)实例:letterCheck.java、letterCheck2.java15Character类常用的方法1、isDigit():如果实参为数字0~9,则返回true,否则返回false。2、isLetter():如果实参为字母则返回true,否则返回false。3、isLetterOrDigit():如果实参为字母或数字则返回true,否则返回false。4、isWhitespace():如果实参是空白符,则返回true,否则返回false。空白符包括制表符、换行符、回车符、换页符。实例:letterCheck3.java16格式:<条件>?<取值1>:<取值2>如:older=yourAge>myAge?yourAge:myage;相当于如下的if语句:If(yourAge>myAge)
older=yourAge;else
older=myAge;例如:用条件语句判断单复数ConditionalOp.java3.3条件运算符(三目运算符)17switch语句又称多分支选择语句与if-else一样,是Java语言的条件选择语句,if语句是判断条件的值,再从两个程序块中选择其中一块执行,只能出现两个分支,而switch语句可存在多个分支。处理多种分支情况时,用switch语句代替if语句可以简化程序,使程序结构清晰明了,可读性增强。3.4switch语句18switch语句的一般形式为:switch(<条件>){case<常量值1>:<语句1>;break; case<常量值2>:<语句2>;break; ……….. case<常量值n>:<语句n>;break; [default:<缺省语句>;]}3.4switch语句产生的结果值可以是char型,byte型,short型,int型或枚举型。不加break语句,执行流程如何?若条件值与case值均不匹配,而又没有此句,执行流程如何?19switch(<条件>){ case<值1>: case<值2>: case<值3>:<语句3>;break; ……….. case<值n>:<语句n>;break; [default:<缺省语句>;]}执行流程如何?实例:TrySwitch.java3.4switch语句20变量作用域(scope):指该变量名可以被引用在程序的那一部分上。在方法内声明的变量称为局部变量(localvariable),对这些变量的访问仅限定在声明他们的方法中。局部变量从他们被声明的地方开始,一直到包含这个声明的语句块结尾均可被访问。
实例:Scope.java3.5变量的作用域21for语句的一般形式为:for(<初始化>;<条件>;<迭代因子>){ <循环体语句>}其中:初始化部分设置控制循环的变量的初值。条件判断部分可以是任何布尔表达式。迭代因子控制循环变量递增或递减。3.6循环---for22for语句的执行过程为:执行初始化。判断条件的返回值。如果为真执行循环体语句;如果为假就跳出for语句循环。执行迭代因子,为下次循环做准备。返回②。for语句是先执行②,即先判断后执行,如果不满足判断条件,循环体可能一次都不能执行。3.6循环---for23for循环流程图实例:ForLoop.javadoubleFor.java前续代码及循环控制变量的定义循环体中的程序循环控制条件TrueFalse后续代码步长变量的改变24流程图进程判断输入输出起始符NYYN开始结束inti=0i<3?i++i<4?j++intj=0打印*号打印换行符号25collection-basedfor循环采用for语句的基本格式在for循环语句的圆括号之间的第一个控制表达式中是循环变量,然后以冒号分隔,第二个控制表达式,确定了第一个控制表达式中声明的变量的取值来源的集合。
程序:CollectionBasedForLoop.java3.6循环---for26while语句的一般形式为:[<初始化部分>]while(<条件表达式>){ <循环体语句>; [<迭代部分>;]}实例:whileLoop.java3.6循环---while27while语句的执行过程为:初始化,为循环设置初始值。判断条件表达式的值,如果为真,就执行循环体语句;如果条件表达式的值为假,就跳出while语句。执行迭代部分,为下次循环做准备。返回②。while语句是先执行②,即先判断后执行,如果不满足判断条件,循环体可能一次都不能执行。注意,在循环体中应该有使循环趋于结束的语句,否则循环将永远进行下去,形成死循环。
3.6循环---while28while循环的流程图前续代码及循环控制变量的定义循环体中的程序循环控制条件TrueFalse后续代码29for循环与while循环的比较for循环比while循环结构清晰。for循环的循环控制变量的定义、初始化,选换结束的条件,步长变量的控制都在一条语句中实现。while循环的循环控制变量是在循环之前定义的,循环控制条件与for相同,而步长变量是在循环体内部修改的。有时候用while实现会方便很多。例如在程序中将在1~10之间产生一个随机数,当产生的数字为7的时候打印一个提示语句并结束程序,否则继续执行直到产生的数字为7。30while语句先判断后执行,while语句为“当型“循环do-while语句先执行后判断,循环体至少被执行一次,称do-while语句为”直到型“循环。3.6循环---do-while31do-while语句的一般形式为:[<初始化部分>]do{<循环体语句>;[<迭代部分>;]}while(<条件表达式>);注意:这里while()后面有一个“;”3.6循环---do-while32do-while语句的执行过程为:初始化,为循环设置初始值。执行循环体语句。执行跌代部分,为下次循环做准备。判断条件表达式的值,如果为真,就返回②;如果条件表达式的值为假,就跳出do-while语句。do-while语句是先执行循环体,再判断,循环体至少被执行一次。同样,在循环体中应该有使循环趋于结束的语句。3.6循环---do-while33dowhile循环流程图程序见:DoWhileLoop.java前续代码及循环控制变量的定义循环体中的程序循环控制条件TrueFalse34嵌套循环:
用户可以将任何一种循环嵌入到另一种循环中,并且可以进行任意多重的嵌套。例题:计算从1开始到给定数值之间所有整数的乘积。程序见:Factorial.java3.6循环35功能:结束本次循环,进入下一次循环,例如:for(inti=1;i<=limit;i++){if(i%3==0){continue;}sum+=i;}3.6循环---continue36功能:可以停止执行内循环,并且可以直接跳转至包含本循环的外循环的下一轮迭代的起始处继续执行。程序见
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中学教师资格考试《综合素质》核心考点教育教学反思题库试卷(含答案)
- 2025合同履行过程中的风险管理
- 2025金融借款合同范本
- 2025-2030美容植入物行业市场现状供需分析及重点企业投资评估规划分析研究报告
- 2025-2030网络工程行业市场发展分析及前景趋势与投资研究报告
- 2025-2030组装机行业市场现状供需分析及重点企业投资评估规划分析研究报告
- 2025-2030精酿啤酒行业发展分析及投资价值研究咨询报告
- 2025-2030米香型白酒行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030竹制家具市场发展分析及行业投资战略研究报告
- 2025企业单位实习合同示范文本
- 《中国医学大辞典》
- 全国工业产品生产许可证申请书
- 中层干部岗位竞聘报名表格评分表格评分标准
- 小学音乐西南师大五年级下册(2023年新编)第二单元新疆乐韵-敲手鼓的小巴郎教案
- 有限空间作业及应急物资清单
- 广西河池市隆友锌银铅锑矿区
- 新疆高速公路建设工程季节性施工方案
- 新版(七步法案例)PFMEA
- 《水泵房巡查流程》word版
- 电力时间同步监测系统V20
- 关于吴姓的历史和现状的研究报告
评论
0/150
提交评论