- 1、本文档共41页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5.1 一维数组 数组用来存储一个元素个数固定的有序集合,该集合内所有元素的数据类型是相同的。 Java语言的数组是以对象方式提供的。 确定数组中特定元素时所需要的下标个数称为数组的维度。 5.1.1 声明数组变量 声明一维数组变量的语法: 数据类型[] 数组变量; 数据类型 数组变量[]; //这种方式是正确的,但不推荐使用 5.1.2 创建数组 创建数组的语法: 数组变量 = new 数据类型[数组大小]; 5.1.2 创建数组 数组变量与数组的关系: 5.1.3 数组元素的访问 通过数组变量和下标可以访问数组中的任意一个元素。其语法形式如下: 数组变量[下标] 5.1.4 数组的初始化 数组的初始化可以把声明数组变量、创建数组和初始化数组元素值在一条语句中完成,其语法形式如下: 数据类型[] 数组变量 = {直接量1, 直接量2, 直接量3, …, 直接量n}; 5.1.5 处理数组元素 1. 用数据填充数组 2. 输出数组的所有元素 5.1.5 处理数组元素 3. 求数组所有元素之和 5.1.5 处理数组元素 4. 在数组中查找指定的数据 5.1.5 处理数组元素 5. 查找数组的最大值及其下标 5.1.6 for-each循环 Java语言在JDK5中增加了for-each语句,不使用下标变量就可以顺序地访问整个数组。 其语法形式如下: for(数组元素类型 变量名 : 数组变量) { //通过上面定义的变量名访问数组的元素 } 5.1.7 一维数组应用实例 例5-1:统计数组中最大值出现次数。要求输入一个整数lengthOfArray确定数组的元素个数,然后随机生成lengthOfArray个整数填充到数组中。找出数组元素中的最大值并统计它出现了多少次。 5.2 二维数组 程序设计中有时会碰到使用一维数组存储和表达仍然不方便的大量数据,例如:存储某个专业3个班学生的考试成绩、存储线性代数中的矩阵等。可以使用二维数组表示具有二维关系的同类型数据。 5.2.1 二维数组的定义与创建 Java语言规定二维数组变量的声明语法如下: 数据类型[][] 数组变量; 5.2.2 二维数组的长度 Java语言的二维数组实际上是一个一维数组,该一维数组的每个元素又是一个一维数组。 5.2.2 二维数组的长度 二维数组是元素类型为一维数组的一维数组 5.2.3 二维数组应用实例 例5-2:求学生考试的平均成绩。大学某专业进行了考试,现要求编写程序输入并存储每个班的每个学生的考试成绩,然后计算并输出每个班的所有成绩和平均成绩。每个班的人数可能不相同。 5.3 数组的操作 程序设计中对进行操作的种类是非常多的,例如:复制、排序、查找和填充等。 5.3.1 数组的复制 Java语言中进行数组内容复制的方法较多,这里介绍其中较常用的两种方式: 使用循环语句逐个复制数组元素。 使用System类的静态方法arraycopy方法。 5.3.2 数组的排序 排序是计算机程序设计最常用的算法之一。例如,对某次考试的成绩从高到低进行排序;将候选人名单按姓名进行排序等。 1. 冒泡排序 冒泡排序是一种比较简单的排序算法,基本思路是:对n个数进行升序排序,需要进行n-1趟比较和交换。 例5-3:使用冒泡排序对10个整数进行升序排序。 2. 选择排序 选择排序的基本思想:对n个数进行升序选择排序需要n-1趟。 例5-4:使用选择排序对10个整数进行升序排序。 5.3.3 数组的查找 查找是指在数组寻找特定元素的过程。例如在一份名单中查找有无某个人的名字,在商品列表中查找有无某件商品等。较简单的查找算法有两种:线性查找和二分查找。 5.3.3 数组的查找 使用二分查找的前提条件是数组元素必须已经排序。下面讨论假设数组已经按升序排序,要查找的数据称为关键字。二分查找的基本思想:将关键字与数组的中间元素进行比较,则可能有以下三种情况: 关键字比中间元素小,则下面只需在前一半数组元素中查找。 关键字与中间元素相等,则查找成功,输出结果。 关键字比中间元素大,则下面只需在后一半数组元素中查找。 例5-5:对已经排序的数组进行二分查找。 5.3.4 使用Arrays类对数组进行操作 为了方便对数组进行各种常见的操作,JDK预定义了java.util.Arrays类,该类提供了很多用于对数组进行操作的方法,这些方法适用于所有元素为基本数据类型的数组。 1. 数组排序 2. 数组查找 3. 判断数组内容相等 5.4 字符串 Java语言将字符串作为对象处理,提供String、StringBuffer和StringBuilder三个预定义的类存储和处理字符串,这三个类都位于java.lang包。
您可能关注的文档
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题2第1讲新陈代谢、酶和ATP.ppt
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题2第2讲水分代谢与矿质代谢.ppt
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题2第3讲光合作用与细胞呼吸.ppt
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题2第4讲人和高等动物的新陈代谢.ppt
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题2第5讲微生物与发酵工程含生物固氮.ppt
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题3第1讲植物的激素调节.ppt
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题3第2讲动物生命活动的调节.ppt
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题3第3讲人体的稳态与免态.ppt
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题4第1讲生物的生殖和发育.ppt
- 生物2012高考生物专题复习及考前指导精品课件19份2012高考专题复习专题4第2讲遗传的物质基础.ppt
文档评论(0)