版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学习目标掌握一维数组、多维数组的定义和使用主要内容一维数组的定义及使用多维数组的定义及使用1.一维数组的定义及使用数组的定义在Java中数组的定义有如下两种方法:对于上述两种定义方式,强烈推荐使用第一种格式Java数组中的元素可以是任何数据类型,包括基本数据类型或者引用类型type[]arrayName;typearrayName[];1.一维数组的定义及使用定义一个数组型变量,仅仅表示定义了一个引用变量,而这个引用变量还没有指向任何的存储空间,因此定义数组时不能够指定数组的长度;下面的数组定义是非法的:定义数组时还没有存储空间来存储数组元素,所以这个数组还不能使用,只有对数组进行了初始化之后才能使用。注意:数组也是一种数据类型,数组本身是引用类型。例如int是一个基本数据类型,而int[]就是一种引用类型。int[100]array;
//在Java中这样定义数组是非法的1.一维数组的定义及使用数组的初始化
所谓初始化,就是为数组分配内存空间,并且,为每一个元素赋初值。
(1)静态初始化
静态初始化是指初始化时直接显式地给出每个数组元素的初始值,由系统根据元素个数决定数组的长度。静态初始化的语法格式如下:其中,arrayName是数值的名字,type与之前定义数组时候的元素类型名相同,大括号中则是数组的元素值的列举。例如:
arrayName=newtype[]{元素1,元素2,元素3...}int[]array;array=newint[]{1,2,3};1.一维数组的定义及使用(2)动态初始化
动态初始化时指初始化时先为数组指明长度(分配内存空间),再为数组中元素赋初值。动态初始化的语法结构如下:在上述语法中,需要指明一个int类型的参数length,这个参数指明了数组的长度,也就是数组可以容纳的元素个数。例如:arrayNam=newtype[length];int[]arrayInt=newint[3];//动态初始化一个能容纳三个int型数的数组String[]arrayString=newString[3];//动态初始化一个能容纳三个String值的引用类型数组1.一维数组的定义及使用执行动态初始化时,程序员只需要指明数组的长度,即为每个数组元素指定所需要的内存空间,系统将为这些数组元素分配初始值,称之为默认值。每种数据类型的默认值如下表所示数组在初始化之后,就可以使用该数组了,包括对数组元素的赋值、访问,获取数组长度等。数据类型byteshortintlongfloatdoublecharboolean引用型默认值0000L0.0f0.0D‘\u0000’falsenull1.一维数组的定义及使用数组的使用数组最常见的用法就是访问数组元素,包括为元素赋值和取出数组元素的值。如:arrayInt[0]=10;Java中的数组索引是从0开始的,最后一个元素的索引为数组的长度减1。Java中的数组有一个length属性,用来获取数组的长度,使用“数组名.length”的形式就能返回数组的长度。请看下面一维数组的使用程序:1.一维数组的定义及使用publicclassEx2_xx{ publicstaticvoidmain(String[]args){ String[]weekArray;//定义String类型数组 weekArray=newString[7];//动态初始化 //使用数组,为每个元素赋值 weekArray[0]="Monday"; weekArray[1]="Tuesday"; weekArray[2]="Wednesday"; weekArray[3]="Thursday"; weekArray[4]="Friday"; weekArray[5]="Saturday"; weekArray[6]="Sunday"; System.out.println("一个星期有七天,分别为:"); for(inti=0;i<weekArray.length;i++){ System.out.println(weekArray[i]); } }}2.多维数组的定义及使用多维数组可以理解为数组的数组,我们以二维数组为例:二维数组可以看成一个一维数组,只不过数组中的每一个元素都是一个一维数组;前面介绍过,一维数组是一个引用类型,所以,将二维数组看成是一个一维数组,只不过每个元素是一个数组类型的引用,如果这样考虑,二维数组在理解上就简单的多了。2.多维数组的定义及使用二维数组的定义
二维数组的定义格式如下(这里直接使用最常用的方式):
与一维数组类似,在上述格式中,type指定二维数组中每个元素的数据类型,arrayName为数组名。例如下面例子则是定义一个int类型的二维素组和一个String引用类型的二维数组。type[][]arrayName;int[][]intArray;String[][]stringArray;2.多维数组的定义及使用二维数组的初始化
和一维数组一样,数组定义以后在内存中没有分配具体的存储空间,也没有设定数组的长度,必须要对其进行初始化才能够使用,二维数组的初始化也分为静态初始化和动态初始化。(1)静态初始化
对于二维数组的静态初始化,本质与一维数组类似,下面例子,则是对一个二维数组进行静态初始化。
intArray=newint[][]{{80,85},{90,94,80}};2.多维数组的定义及使用(2)动态初始化
由于二维数组是存储多行多列的数据,二维数组的动态初始化与一维数组稍有区别。二维数组的动态初始化分两种情况:①直接为每个元素分配空间该初始化形式是直接为二维数组的每个元素分配存储空间,其格式和实例如下:②从高维开始,分别为每一维分配空间
二维数组的数据可以认为是多行*多列这样的形势,所谓的从高维开始为每一维分配内存空间是指,首先要确定二维数组的行数,然后再为每一行分配各个元素的内存空间,例如arrayName=newtype[arrayLength1][arrayLength2];//动态初始化格式arrayName=newint[2][3];//初始化举例(分配一个2行*3列的二维数组)int[][]intArray;intArray=newint[3][];//先分配二维数组的行空间intArray[0]=newint[2];//然后分别为每行分配元素空间intArray[1]=newint[2];intArray[2]=newint[3];2.多维数组的定义及使用二维数组的使用
和一维数组一样,引用二维数组中的元素也是通过元素索引来引用,只是在二维数组中,由于元素的存在形式是多行*多列的,所以要使用二维数组中的元素要指明行标和列标。使用二维数组元素的格式如下:下面例子给出了二维数组的定义、初始化及使用。arrayName[index1][index2];//index1为行标,index2为列标publicclassEx2_xx{ publicstaticvoidmain(String[]args){ int[][]intArray={{1,2},{2,3},{3,4,5}}; intsum=0; for(inti=0;i<3;i++){ for(intj=0;j<in
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 仓储管理租赁合同(2026年)
- 现场人员疏散逃生演练方案
- 农贸市场快检室运行管理制度
- 苹果树腐烂病春季防治技术标准
- 经络疏通技术操作规范
- 葡萄霜霉病药剂防治操作规范
- 果蔬采摘分级包装标准作业指引
- 更年期女性激素平衡膳食指南
- 肉牛犊牛早期断奶管理技术标准
- 绿色有机水稻栽培技术规程
- 2026年人力资源服务合同协议范本
- 学生成长记录册
- (2026年)GINA全球哮喘处理和预防策略(更新版)解读课件
- 2026年广东省东莞市卫生健康系统人员招聘笔试参考题库及答案解析
- 2026年事业单位《综合基础知识》高分题库【巩固】附答案详解
- 幼儿园一日常规安全培训
- 01K403 风机盘管安装
- 流行病学试题-流行病学题库及答案
- YS/T 967-2014电池级磷酸二氢锂
- LY/T 2372-2014活动地板基材用石膏纤维板
- GB/T 12586-2003橡胶或塑料涂覆织物耐屈挠破坏性的测定
评论
0/150
提交评论