版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
技能目标掌握数组定义以及初始化01.02.03.能利用数组解决实际问题能利用字符串的各种方法解决实际问题预备知识数据类型运算符基本程序结构01数组02字符串预备知识-01数组数组是相同类型变量的集合,这些变量具有相同的标识符即数组名,数组中的每个变量称为数组的元素(arrayelement)。数组不是基本数据类型,而是复合数据类型也就是引用数据类型,因此数组的使用方式不同于基本数据类型,必须通过创建数组类对象的方式使用数组。1、数组的定义(声明)数组的定义方式为:数据类型数组名[];或者:数据类型[]数组名;2、数组的创建定义数组时,系统并没有为其分配内存,也没有指明数组中元素的个数。因数组本身是对象,必须用new运算符创建数组,方法如下:int[]age;//定义数组变量ageage=newint[100];//创建数组预备知识-02字符串Java将字符串作为String类型和StringBuffer类对象来处理。字符串常量是用一对””括起来的字符序列,如”hellpworld!”。字符串变量的声明方法如下:Stringname;有两种方法使name指向具体对象。(1)用“=”运算符将其指向某一字符串,如语句:name=”zhuhua”;(2)用new运算符创建String类的对象,语句:name=newString(“zhuhua”);这两种方法的结果是一样的。同String类不同的是,StringBuffer对象不能用“=”创建,必须用new运算符创建,例如语句:StringBuffertitle=newStringBuffer(“javaprograme”);01任务需求任务1利用数组实现学生成绩的处理利用数组实现如下功能:键盘录入5个学生java课程的成绩,存入数组中,求出他们5个java课程成绩的平均分,并按照成绩进行升序排列输出以及降序排列输出,输出5个人中java成绩的最高分和最低分。02任务实现关键代码: publicstaticvoidmain(String[]args){ double[]score=newdouble[5];//1、声明并分配空间
doubleavg; inti; doublesum=0; //2、利用nextDouble(),键盘输入数据
Scannerinput=newScanner(System.in); System.out.println("请输入成绩");
for(i=0;i<5;i++){ score[i]=input.nextDouble(); }任务1利用数组实现学生成绩的处理02任务实现 //3、求出平均值
for(i=0;i<5;i++){ sum=sum+score[i];} avg=sum/5; //4、输出平均值
System.out.println("成绩的平均分是");
System.out.println(avg);//引用
//排序
Arrays.sort(score); System.out.println("升序的成绩是");
for(i=0;i<score.length;i++){ System.out.print(+score[i]+"\t"); } //降序成绩按照从高到低的顺序输出
System.out.println(); System.out.println("降序的成绩是");
for(i=score.length-1;i>=0;i--){ System.out.print(+score[4]+"\t"); } //请输出成绩的最高分
System.out.println(); System.out.println("最高分是:"+score[4]); System.out.println("最低分是:"+score[0]);}任务1利用数组实现学生成绩的处理03任务解析本任务中通过循环,利用input.nextDouble()方法,对数组进行了初始化。然后利用累加sum=sum+score[i]进行了求和进一步求出了平均值。java.util.Arrays类提供了许多常用方法来操作数组,如排序、查询等,其中Arrays.sort(score)就是利用sort()快速排序数组score的方法,此方法是将数字中的元素按照从小到大的顺序进行重新排列。并且这个方法是静态方法,无需创建Arrays类的实例就能直接使用,它的使用方式是:Arrays.sort(数组名)。任务1利用数组实现学生成绩的处理01任务需求任务2输入5种水果的英文名字,将他们按字母顺序排列输出。水果名称是一串字符组成的字符串,5种水果名称,可以用一个长度为5的数组实现,因此定义一个字符串数组,之后利用数组的sort()方法完成对水果的排序。02任务实现任务2输入5种水果的英文名字,将他们按字母顺序排列输出。publicclassSortFruit{ publicstaticvoidmain(String[]args){ Stringfruit[]=newString[5]; Scannerinput=newScanner(System.in); for(inti=0;i<fruit.length;i++){ System.out.print("请输入第"+(i+1)+"种水果:"); fruit[i]=input.next(); } //对水果名称进行排序
Arrays.sort(fruit); System.out.println("\n这些水果在英文词典中出现的顺序是:"); for(inti=0;i<fruit.length;i++){ System.out.println(fruit[i]); } }}01任务需求任务3计算一个班级每个学生学期末成绩的平均分。计算一个班级每个学生学期末成绩的平均分,为了输入数据简单,模拟2个学生4门课程的情况。02任务实现publicclassStudengScore{ publicstaticvoidmain(String[]args){ double[][]stuScore=newdouble[2][4];//声明创建二维数组stuScore存放学生成绩
double[]stuSum=newdouble[2];//声明创建一维数组stuSum存放每个学生的成绩和
double[]stuAverage=newdouble[2];//声明创建一维数组stuAverage存放每个学生的平均成绩
Scannerinput=newScanner(System.in); //循环录入每个学生的成绩,并将每个学生成绩累加到stuSum,计算每个学生的平均成绩stuAverage for(inti=0;i<stuScore.length;i++){ System.out.println("请输入第"+(i+1)+"个学生的成绩,并将成绩累加到stuSum"); for(intj=0;j<stuScore[i].length;j++){ stuScore[i][j]=input.nextDouble(); stuSum[i]=stuSum[i]+stuScore[i][j]; } stuAverage[i]=stuSum[i]/4; }。。。。。任务3计算一个班级每个学生学期末成绩的平均分。01任务需求任务4输入用户的身份证号,取出用户的出生日期输入用户的身份证号,取出用户的出生日期。需要一个字符串变量存放身份证号,如果是有效身份证号码(18位),利用substring(intbeginIndex,intendIndex)方法,将出生年月日取出。02任务实现publicclassGetBirthday{publicstaticvoidmain(String[]args){ System.out.println("请输入用户的身份证号码:"); Scannerinput=newScanner(System.in); Stringid=input.next(); Stringyear;Stringmonth;Stringday; while(id.length()!=18){//有效身份证号码为18位
System.out.println("身份证号码无效!"); System.out.println("请重新输入用户的身份证号码:"); id=input.next(); } year=id.substring(6,10);//提取年
month=id.substring(10,12);//提取月
day=id.substring(12,14);//提取日
System.out.println("\n该用户生日是:"+year+"年"+month+"月"+day+"日");}}任务4输入用户的身份证号,取出用户的出生日期03任务解析“+”是连接运算符,在使用“+”运算符连接字符串和int型(或者double型)数据时,“+”将int型(或者double型)数据自动转化时String类型。除此之外concat()方法也可以将一个字符串连接到另一个字符串的后面。substring(intbeginIndex,intendIndex)取从beginIndex位置开始到endIndex-1位置的子字符串。任务4输入用户的身份证号,取出用户的出生日期01任务需求任务5密码验证在某注册系统中,密码验证是非常重要的环节,必须保证前后输入的密码串完全一致。,我们可以通过equals()方法,比较两次输入是否一致。02任务实现//从键盘接收密码
System.out.println("---欢迎进入员注册系统---"); Scannerinput=newScanner(System.in); System.out.println("请输入您的密码:"); Stringpsw1=i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年经济形势分析与预测考试题
- 2026年品牌体验店旗舰店建设与运营标准试题
- 2026年铁路系统铁路机务系统机车运用与检修安全题库
- 2026年环境工程高级职称评定笔试
- 绿色发展与健康生活承诺书(7篇)
- 工程管理现场勘查模板
- 2026年医保智能监控系统规则与疑点筛查题库
- 2026年水土保持设施自主验收规程知识考核
- 2026年环境保护意识与行动能力测试题目
- 第8课 草药种植教学设计-2025-2026学年小学劳动五年级下册湘教版《劳动教育》
- 【物理】2026郑州高三二模试题及答案
- 《AQ3067-2026化工和危险化学品重大生产安全事故隐患判定准则》解读
- 施工电梯基础监理实施细则
- 国家机关事务管理局所属事业单位2025年度公开招聘应届毕业生笔试模拟试题
- 服装压力舒适性的测试与评价体系构建
- 2026年钻探工技师考试题及答案
- 2026年河北邢台市中考数学试题及答案
- 2026年高考地理高分冲刺学习指南
- 第二单元 辽宋夏金元时期:民族关系发展和社会变化 单元总结 - 学生版
- 国开2026年《公共政策概论》形成性考核任务1-4答案
- 2026年3月版-安全环境职业健康法律法规、规章、标准文件清单
评论
0/150
提交评论