Java自学课件-数组.ppt

上传人:max****ui 文档编号:11549348 上传时间:2020-04-28 格式:PPT 页数:23 大小:357.50KB
返回 下载 相关 举报
Java自学课件-数组.ppt_第1页
第1页 / 共23页
Java自学课件-数组.ppt_第2页
第2页 / 共23页
Java自学课件-数组.ppt_第3页
第3页 / 共23页
点击查看更多>>
资源描述
Java程序设计,第6章数组,学习目标,理解数组的概念掌握声明数组变量、创建数组、初始化数组掌握如何访问数组元素掌握向方法传递数组了解如何复制数组掌握搜索和排序算法掌握多维数组的声明和创建,数组,数组(array)是相同类型变量的集合。,doublemyList=newdouble10;,声明数组引用变量,语法datatypearrayRefVar;例如:doublemyList;或者datatypearrayRefVar;例如:doublemyList;数组变量是引用类型的变量,声明数组变量并不分配内存空间。,创建数组,使用new操作符创建数组。arrayRefVar=newdatatypearraySize;例如:myList=newdouble10;声明和创建在一条语句中。datatypearrayRefVar=newdatatypearraySize;或者datatypearrayRefVar=newdatatypearraySize;例如:doublemyList=newdouble10;或者doublemyList=newdouble10;,数组初始化,新创建的数组对象,其元素根据类型被设置为默认的初始值。数值类型为0字符类型为u0000布尔类型为false引用类型为null数组可以在声明后的花括号中提供初始值。doublemyList=1.9,2.9,3.4,3.5或者doublemyList;myList=newdouble1.9,2.9,3.4,3.5,访问数组,一个数组的大小在创建这个数组之后不能被改变。可以用以下语法进行访问数组的长度:arrayRefVar.length例如:myList.length的值为10。数组元素通过索引进行访问。元素的索引从0开始,范围从0到length-1。arrayRefVarindex例如:myList0表示数组的第一个元素myList9表示数组的最后一个元素,增强的for循环(JDK1.5),JDK1.5引入一个新的for循环,可以不用下标就可以依次访问数组元素。语法:for(elementTypevalue:arrayRefVar)例如for(inti=0;i=best10,等级为A如果分数=best20,等级为B如果分数=best30,等级为C如果分数=best40,等级为D否则等级为F,Example:AssignGrade.java,复制数组,直接使用赋值语句不能实现数组的复制,结果是两个数组引用变量指向同一个数组对象。复制数组的方法使用循环来复制每个元素使用System.arraycopy方法使用数组的clone方法,向方法传递数组,可以将数组变量作为实参传递给方法。基本数据类型传递的是实际值的拷贝,修改形参,不影响实参。数组引用变量中传递的是对象的引用,修改形参,将改变实参引用的数组对象。也可以从方法中返回数组。,例传递数组,编写两个方法交换数组中的两个元素。swap方法交换两个int类型的参数swapFirstTwoInArray方法交换数组参数的前两个元素,Example:TestPassArray.java,例统计每个字符出现的次数,编写程序,完成以下任务随机产生100个小写字母,并保存在一个字符数组中。计算数组中每个字母出现的次数。,Example:CountLettersInArray.java,搜索数组,线性搜索法(linearsearching)将一个值与数组的每个元素进行比较。如果找到相同的元素,返回元素的索引;否则返回-1。二分搜索法(binarysearching)是在一个已排序的数组中搜索特定元素。假设数组已按升序排列,将关键字与数组中间元素进行比较:如果关键字比中间元素小,则在前一半数组中搜索;如果关键字与中间元素相同,查找结束;如果关键字比中间元素在,则在后一半数组中搜索。,Example:LinearSearch.java,BinarySearch.java,排序数组,选择排序算法:假设将数组按升序排列算法将列表中的元素最大值放在最后一个位置将剩下元素的最大值放在倒数第二的位置以此类推,直到剩下一个数为止。,2,9,5,4,8,1,6,Example:SelectionSort.java,二维数组,声明数组引用变量dataTyperefVar;创建数组并将引用赋值给变量refVar=newdataTyperowSizecolSize;在一条语句中声明和创建数组dataTyperefVar=newdataTyperowSizecolSize;或者dataTyperefVar=newdataTyperowSizecolSize;,二维数组示意图,intmatrix=newint45,matrix21=7,intarray=1,2,3,4,5,6,7,8,9,10,11,12;,二维数组的长度,二维数组的每个元素是一个一维数组。数组X的长度是数组X的元素的个数,可由X.length得到。元素Xi是一个一维数组,其长度可由Xi.length得到。,不规则数组,二维数组的每个元素(数组)的长度可以不同。创建二维数组时,可以只指定第一下标。二维数组的每个元素为空,必须创建每个元素数组。例如:intx=newint5;x0=newint5;x1=newint4;x2=newint3;x3=newint2;x4=newint1;,例给选择题评分,编写程序,给选择题评分。设有8个学生10个问题,答案存储在一个二维数组中。每行记录一个学生的答案。输出每个学生的评分结果。,ABACCDEEADDBABCAEEADEDDACBEEADCBAEDCEEADABDCCDEEADBBECCDEEADBBACCDEEADEBECCDEEAD,0123456789,学生0学生1学生2学生3学生4学生5学生6学生7,DBDCCDAEAD,答案,Example:GradeExam.java,例使用数组计算所得税,美国的个人所得税根据纳税人情况和须纳税收入进行计算。编写程序,用户输入纳税人情况和须纳税收入,计算出2002年的所得税。,2002年美国个人所得税税率表,Example:ComputeTax.java,例分数计算,编写程序计算班级中每个学生的总分。假设分数保存在三维数组中,数组的第维代表学生,第维代表试卷,第维代表试卷的一部分的成绩。,Example:TotalScore.java,
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!