JAVA循环、数组、字符串.ppt_第1页
JAVA循环、数组、字符串.ppt_第2页
JAVA循环、数组、字符串.ppt_第3页
JAVA循环、数组、字符串.ppt_第4页
JAVA循环、数组、字符串.ppt_第5页
已阅读5页,还剩64页未读 继续免费阅读

下载本文档

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

文档简介

循环、数组、字符串,举例说明,循环结构用于解决哪些问题?循环结构中使用了哪些关键字?程序调试有哪些步骤?什么时候选用for循环结构?for循环结构的基本语法和执行顺序是什么?什么情况下使用数组?如何定义一个int数组?怎样引用一个数组中的元素?字符串有哪些常用方法?,预习检查,理解循环的含义会使用while循环结构会使用do-while循环结构会使用for循环结构会在程序中使用break、continue和return掌握数组的基本用法会应用数组解决简单问题理解基本数据类型和引用数据类型字符串常用方法字符串与基本类型数据之间的转换,本章目标,指导计算100以内偶数之和,训练要点:while循环结构程序调试需求说明:编程实现:计算100以内(包括100)的偶数之和观察每一次循环中变量值的变化实现思路:1、声明整型变量num和sum2、循环条件:num=1003、循环操作:累加求和,讲解需求说明,完成时间:20分钟,指导查询商品价格,训练要点:while循环结构程序调试需求说明:循环输入商品编号,显示对应的商品价格输入“n”结束循环实现思路:1、声明变量2、循环体3、循环条件难点指导:循环体内使用switch,讲解需求说明,完成时间:25分钟,练习升级购物结算,需求说明:循环输入商品编号和购买数量当输入n时结账结账时计算应付金额并找零,完成时间:25分钟,经过几天的学习,老师给张浩一道测试题,让他先上机编写程序完成,然后老师检查是否合格。如果不合格,则继续编写。,do循环操作while(循环条件);,while(循环条件)循环操作,while循环先判断,再执行不适合描述此故事,?,为什么需要do-while循环,5、如何用程序讲述下面的故事?,do循环操作while(循环条件);,先执行一遍循环操作,符合条件,循环继续执行;否则,循环退出,什么是do-while循环,特点:先执行,再判断,分号不可少,while循环和do-while循环的区别语法不同执行次序不同初始情况不满足循环条件时while循环一次都不会执行do-while循环不管任何情况都至少执行一次,do循环操作while(循环条件);,while(循环条件)循环操作,先判断,再执行,先执行,再判断,比较while和do-while,小结3,使用do-while实现:输出摄氏温度与华氏温度的对照表,要求它从摄氏温度0度到250度,每隔20度为一项,对照表中的条目不超过10条。转换关系:华氏温度=摄氏温度*9/5.0+32,提示:1、循环操作:计算摄氏温度,并输出对照条目2、循环条件:条目=10;);,条件为true,循环体被执行,for(inti=0;i100;i+)System.out.println(好好学习!);,代码规范:格式对齐、代码的缩进,表达式1,表达式2,表达式3,循环操作,参数初始化,条件判断,更新循环变量,1,2,4,3,for循环的语法和执行顺序,指导计算顾客比例,训练要点:for循环结构需求说明:商场对顾客的年龄层次进行调查计算各层次的顾客比例实现思路:1、定义计数器变量2、利用循环录入顾客年龄难点指导:循环条件和循环体,讲解需求说明,完成时间:25分钟,inti=2;switch(i)case1:System.out.println(星期一);break;case2:System.out.println(星期二);break;/其他语句,遇到break,立即跳出switch语句,回顾break用于switch语句,描述4000米长跑比赛,for(inti=0;i10;i+)跑400米;,if(不能坚持)break;/退出比赛,第8圈,快累死了我要退出,为什么需要break语句,break:改变程序控制流用于do-while、while、for中时,可跳出循环而执行循环后面的语句,while()break;,跳出整个循环,break通常在循环中与条件语句一起使用,什么是break语句,如何使用break语句2-1,3、循环录入某学生5门课的成绩并计算平均分,如果某分数录入为负,停止录入并提示录入错误循环录入成绩,判断录入正确性:录入错误,使用break语句立刻跳出循环;否则,累加求和,for(inti=0;i5;i+)/循环5次录入5门课成绩System.out.print(请输入第+(i+1)+门课的成绩:);score=input.nextInt();if(scorey)returnx;elseif(xy)returny;elsereturn0;,18/35,返回值跳出本函数,执行调用函数之后的语句,提示1、使用循环进行累加,从1到102、判断累加值是否大于203、如果大于20,则跳出循环,并打印当前值,小结2,110之间的整数相加,得到累加值大于20的当前数,参考代码,1、通过循环,获得分数大于等于80分的学生人数num2、判断:如果成绩80,不执行num+,直接进入下一次循环,为什么需要continue语句,4、循环录入Java课的学生成绩,统计分数大于等于80分的学生比例,continue:只能用在循环里continue作用:跳过循环体中剩余的语句而执行下一次循环,while()continue;,继续下一次循环,通常与条件语句一起使用,加速循环,for(inti=0;i10;i+)跑400米;if(!口渴)continue;/不喝水,继续跑接过水壶,喝水;,示例,什么是continue语句,for(inti=0;itotal;i+)System.out.print(请输入第+(i+1)+位学生的成绩:);score=input.nextInt();if(score80)continue;num+;System.out.println(80分以上的学生人数是:+num);doublerate=(double)num/total*100;System.out.println(80分以上的学生所占的比例为:+rate+%);,对录入的分数进行判断,如果小于80,跳出本次循环,执行下一次循环,如何使用continue语句,使用场合break可用于switch结构和循环结构中continue只能用于循环结构中return用于方法中作用(循环结构中)break语句终止某个循环,程序跳转到循环块外的下一条语句。continue跳出本次循环,进入下一次循环退出当前方法,返回调用该方法语句处,执行紧跟语句,对比break、continue和return,提示1、使用循环进行累加,循环的范围是从1至102、判断当前数是否为偶数3、如果为奇数跳过,执行下一个循环,如果为偶数,进行累加,小结3,求110之间的所有偶数和,参考代码,指导循环录入会员信息,训练要点:for循环结构continue语句需求说明:循环录入3位会员的信息会员号合法,显示录入信息;否则显示录入失败实现思路:1、循环录入3位会员信息。2、会员号无效,利用continue实现程序跳转难点指导:continue的使用,讲解需求说明,完成时间:25分钟,练习验证用户登录信息,需求说明:用户登录验证。验证次数最多3次,完成时间:20分钟,到目前为止所学的循环结构有哪些?,循环结构总结2-1,无论哪一种循环结构,都有4个必不可少的部分:初始部分、循环条件、循环体、迭代部分,需要多次重复执行一个或多个任务的问题考虑使用循环来解决,循环结构总结2-2,区别1:语法区别2:执行顺序while循环:先判断,再执行do-while循环:先执行,再判断for循环:先判断,再执行区别3:适用情况循环次数确定的情况,通常选用for循环循环次数不确定的情况,通常选用while和do-while循环,总结,for循环结构如何执行?在循环中使用什么方式跳出或终止循环?break与continue之间的差别是什么?Return的用法,为什么需要数组2-1,intstu1=95;intstu2=89;intstu3=79;intstu4=64;intstu5=76;intstu6=88;avg=(stu1+stu2+stu3+stu4+stu5+stu30)/30,30个变量太繁琐,1、Java考试结束后,老师给张浩分配了一项任务,让他计算全班(30人)的平均分,数组,为什么需要数组2-2,列表中的内容是否可以按照如右图所示的方式来存储呢?,可以,这就是数组!,生活案例:购物列表,数组是一个变量,存储相同数据类型的一组数据,什么是数组3-1,声明一个变量就是在内存空间划出一块合适的空间声明一个数组就是在内存空间划出一串连续的空间,什么是数组3-2,数组的结构和基本要素标识符:数组的名称,用于区分不同的数组数组元素:向数组中存放的数据元素下标:对数组元素进行编号元素类型:数组元素的数据类型,什么是数组3-3,数组只有一个名称,即标识符元素下标标明了元素在数组中的位置,从0开始数组中的每个元素都可以通过下标来访问数组长度固定不变,避免数组越界,使用数组四步走:1、声明数组2、分配空间3、赋值4、处理数据,inta;,a=newint5;,a0=8;,a0=a0*10;,a,8,80,a0,如何使用数组,intscore1;/Java成绩intscore2;/C#成绩Stringname;/学生姓名,声明数组:告诉计算机数据类型是什么,1,数据类型数组名;,数据类型数组名;,声明数组,声明数组时不规定数组长度,score=newint30;avgAge=newint6;name=newString30;,30,分配空间:告诉计算机分配几个连续的空间,2,数据类型数组名=new数据类型大小;,声明数组并分配空间,分配空间,score0=89;score1=79;score2=76;,赋值:向分配的格子里放数据,30,score0,score1,score2,89,79,76,太麻烦!能不能一起赋值?,3,数组赋值,方法1:边声明边赋值方法2:动态地从键盘录入信息并赋值,解决,intscore=89,79,76;,Scannerinput=newScanner(System.in);for(inti=0;i30;i+)scorei=input.nextInt();,intscore=newint89,79,76;,数组赋值,不能指定数组长度,intscore=60,80,90,70,85;doubleavg;avg=(score0+score1+score2+score3+score4)/5;,intscore=60,80,90,70,85;intsum=0;doubleavg;for(inti=0;iscore.length;i+)sum=sum+scorei;avg=sum/score.length;,成绩单,访问数组成员:使用“标识符下标”,访问成员,数组的length属性,对数据进行处理:计算5位学生的平均分,4,处理数据,小结2,使用数组的步骤是什么?有一个数列:8,4,2,1,23,344,12循环输出数列的值求数列中所有数值的和猜数游戏:从键盘中任意输入一个数据,判断数列中是否包含此数,参考代码1,参考代码2,参考代码3,指导显示商品名称,训练要点:数组的使用需求说明:在控制台显示5件特价商品名称实现思路:1、创建数组存储商品名称2、遍历数组输出商品名称,讲解需求说明,完成时间:10分钟,练习购物金额结算,需求说明:以表格的形式输出5笔购物金额及总金额,完成时间:25分钟,使用java.util.Arrays类java.util包提供了许多工具类Arrays类提供操作数组的方法,例排序、查询Arrays类的sort()方法:对数组进行升序排列,Arrays.sort(数组名);,数组排序2-1,2、循环录入5位学员成绩,进行升序排列后输出结果,importjava.util.*;/导入包intscores=newint5;/成绩数组Scannerinput=newScanner(System.in);System.out.println(请输入5位学员的成绩:);for(inti=0;imax)max=a2;if(a3max)max=a3;,使用循环来解决,求最大值3-2,/计算成绩最大max=scores0;for(inti=1;imax)max=scoresi;System.out.println(考试成绩最高分为:+max);,循环打擂,使用max存储擂主初始值:第一个元素为擂主,求最大值3-3,练习求最低价格,需求说明:求出4家店的最低手机价格,完成时间:15分钟,基本数据类型的深入理解2-1,4、张浩和李明去年身高都是170cm,今年李明长到了180cm,张浩没有变化,输出去年和今年两人身高定义两个变量保存身高修改变量的值输出变量的值,基本数据类型的深入理解2-2,intheightZhang=170;intheightLi=heightZhang;System.out.println(去年-张浩的身高是:+heightZhang+,李明的身高是:+heightLi);heightLi=180;System.out.println(今年-张浩的身高是:+heightZhang+,李明的身高是:+heightLi);,heightZhang,170,170,heightLi,180,不同的变量会分配不同的存储空间,改变一个变量值不会影响另一个变量值,引用数据类型的深入理解3-1,5、张浩和李明去年身高与体重均为170cm和60kg,李明今年身高和体重变为180cm和70kg,张浩无变化。输出两人的身高和体重采用和上一个示例相同的思路看是否可行,引用数据类型的深入理解3-2,intinfoZhang=newint170,60;intinfoLi=infoZhang;infoLi0=180;/今年李明的身高变为180infoLi1=70;/今年李明的体重变为70,infoZhang,0 x2a486c,0 x2a486c,infoLi,对引用数据类型,赋值是把原对象的引用传递给另一个引用,两个引用指向同一块内存空间,引用数据类型的深入理解3-3,intinfoZhang=newint170,60;intinfoLi=newint2;for(inti=0;iinfoZhang.length;i+)infoLii=infoZhangi;infoLi0=180;/今年李明的身高变为180infoLi1=70;/今年李明的体重变为70,infoZhang,0 x2a486c,0 x2a679d,infoLi,数组元素有默认值,练习更新会员积分,需求说明:将原有积分进行备份,然后赠送每位会员500积分,编写程序输出积分情况,完成时间:20分钟,总结,数组有哪些特点?使用数组的四个步骤?如何实现数组的排序?基本数据类型和引用数据类型在内存分配上有什么不同?,无处不在的字符串,生活中的字符串使用String对象存储字符串String类位于java.lang包中,具有丰富的方法计算字符串的长度连接字符串比较字符串提取字符串,频繁使用的字符串,“标准决定水准”,“态度决定高度”,“教育改变生活”,Strings=“胸怀决定格局;,Strings=newString(“胸怀决定格局);,字符串长度,计算字符串长度,字符串,长度,调用length()方法获得,返回字符串中的字符数,调用方法:,字符串标识符.length();,方法原型:,publicintlength(),字符串比较,equals()方法比较原理输入的“Java”和“java”代表同一课程,如何解决?使用equalsIgnoreCase()方法结合toUpperCase()或toLowerCase(),字符串1,字符串2,检查组成字符串内容的字符是否完全一致,字符串比较,使用equalsIg

温馨提示

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

评论

0/150

提交评论