数组的定义及使用.ppt

上传人:xin****828 文档编号:15463508 上传时间:2020-08-11 格式:PPT 页数:28 大小:812.82KB
收藏 版权申诉 举报 下载
数组的定义及使用.ppt_第1页
第1页 / 共28页
数组的定义及使用.ppt_第2页
第2页 / 共28页
数组的定义及使用.ppt_第3页
第3页 / 共28页
资源描述:

《数组的定义及使用.ppt》由会员分享,可在线阅读,更多相关《数组的定义及使用.ppt(28页珍藏版)》请在装配图网上搜索。

1、JAVA 应用开发详解,第4章:数组与方法 数组定义及使用,MLDN 软件教学研发部,本章目标,掌握数组的作用 掌握数组的声明及内存分配 通过数组的简单范例加深数组操作的理解 掌握多维数组的定义及使用,数组,数组是一组相关数据的集合,一个数组实际上就是一连串的变量,数组按照使用可以分为一维数组、二维数组、多维数组。 数组的优点: 不使用数组定义100个整型变量:int i1;int i2;int i100 使用数组定义:int i100,一维数组,一维数组可以存放上千万个数据,并且这些数据的类型是完全相同的。 要使用Java的数组,必须经过两个步骤:(1)声明数组、(2)分配内存给该数组。这两

2、个步骤的语法如下: 声明形式一: 声明一维数组:数据类型 数组名 = null ; 分配内存给数组:数组名 = new 数据类型长度 ; 声明形式二: 声明一维数组:数据类型 数组名= null ;,声明一维数组,数组的声明格式里,“数据类型”是声明数组元素的数据类型,常见的类型有整型、浮点型与字符型等。 “数组名”是用来统一这组相同数据类型的元素的名称,其命名规则和变量的相同,建议读者使用有意义的名称为数组命名。 数组声明后实际上是在栈内存中保存了此数组的名称,接下来便是要在堆内存中配置数组所需的内存,其中“长度”是告诉编译器,所声明的数组要存放多少个元素,而“new”则是命令编译器根据括号

3、里的长度开辟空间。,声明及开辟数组空间,声明数组: int score = null ; null表示引用数据类型的默认值 为数组开辟空间: score = new int3;,堆栈内存的解释,数组操作中,在栈内存中保存的永远是数组的名称,只开辟了栈内存空间数组是永远无法使用的,必须有指向的堆内存才可以使用,要想开辟新的堆内存则必须使用new关键字,之后只是将此堆内存的使用权交给了对应的栈内存空间,而且一个堆内存空间可以同时被多个栈内存空间指向,即:一个人可以有多个名字,人就相当于堆内存,名字就相当于栈内存,声明数组的同时分配内存空间,声明数组的同时分配内存: 数据类型 数组名 = new 数

4、据类型个数 int score = new int10 ; 声明一个元素个数为10的整型数组score,同时开辟一块内存空间供其使用 在Java中,由于整数数据类型所占用的空间为4个bytes,而整型数组score可保存的元素有10个,所以上例中占用的内存共有4 * 10 = 40个字节,数组中元素的表示方法,想要访问数组里的元素,可以利用索引来完成。Java的数组索引编号由0开始,以一个的score10的整形数组为例,score0代表第1个元素,score1代表第2个元素,score9为数组中第10个元素(也就是最后一个元素)。,数组的声明及输出,访问注意,程序中可以发现,对于数组的访问采用

5、“数组名称下标”的方式,之前一共开辟了三个空间大小的数组,所以下标的取值是02,假设程序中取出的内容超过了这个下标,如“score3”,则程序运行的时候会出现以下的错误提示: java.lang.ArrayIndexOutOfBoundsException: 3,为数组中的元素赋值并进行输出,代码及内存分析 I,代码及内存分析 II,代码及内存分析 III,取得数组长度,要特别注意的是,在Java中取得数组的长度(也就是数组元素的长度)可以利用“数组名称.length”完成,如下面的格式: 数组名称.length 返回一个int型数据,数组的静态初始化,数组的内容分为动态初始化和静态初始化两种

6、,之前所讲解的全部代码读者可以发现是采用先声明数组之后为数组中的每个内容赋值的方式完成的。那么也可以通过数组静态初始化在数组声明时就指定其具体内容。 如果想直接在声明时就给数组赋初值,可以利用大括号完成。只要在数组的声明格式后面再加上初值的赋值即可,如下面的格式: 数据类型 数组名 = 初值0 , 初值1 , , 初值n,数组的静态初始化,数组应用范例 求出数组中的最大和最小值,对整型数组按照由小到大的顺序进行排列,二维数组,如果说可以把一维数组当成几何中的线性图形,那么二维数组就相当于是一个表格。 二维数组声明的方式和一维数组类似,内存的分配也一样是用new这个关键字。其声明与分配内存的格式

7、如下所示: 动态初始化: 数据类型 数组名 ; 数组名 = new 数据类型行的个数列的个数 ; 动态初始化: 数据类型 数组名 = new 数据类型行的个数列的个数 ;,二维数组的存储,声明整型数组score,同时为其开辟一块内存空间 int score = new int43 ; 整型数据score可保存的元素有4*3 = 12个,而在Java中,int数据类型所占用的空间为4个字节,因此该整型数组占用的内存共为4*12 = 48个字节,二维数组的定义及使用,二维数组静态初始化,格式: 数据类型 数组名 = 第0行初值,第1行初值,第n行初值,; 声明二维数组: int score = 67, 61 , 78, 89, 83 , 99, 100, 98, 66, 95 ;,使用静态初始化声明一个二维数组,多维数组,经过前面一、二维数组的练习后不难发现,想要提高数组的维数,只要在声明数组的时候将索引与中括号再加一组即可,所以三维数组的声明为int score,而四维数组为int score ,以此类推。,定义和使用三维数组,下一章内容,方法的声明及使用,

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

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

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


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