资源描述:
《JAVA编程基础-04数组》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、JAVA编程基础——数组3Sept.2008©NeusoftConfidential第四章数组目标:介绍关于数组的相关知识。通过本课的学习,学员应该掌握如下知识:1)创建数组及初始化其中数据2)了解数组在内存中的表现形式3)一维数组及多维数组的创建和遍历4)数组的复制和排序及数组异常教学方法:讲授ppt+上机练习本章要点··一维数组一维数组的声明、创建、初始化数组在内存中的表示数组的元素数组的长度数组的常见错误多维数组二维数组的声明、创建、初始化数组的复制数组的排序Contents123一维数组多维数组数组的操作数组的基本概念·数组的
2、概念数组可以看成是多个相同类型数据的组合,实现对这些数据的统一管理{1,2,3,4,5}{“apple”,“pear”,“banana”,“grape”}数组中的每一个数据—数组的一个元素(element)数组中的元素可以是任何数据类型,包括基本数据类型和引用类型数组中元素的个数,称为数组的长度(length)JAVA语言中声明数组时不能指定其长度e.g.inta[5];//非法数组的声明·一维数组的声明·数组类型示例数组名[]或数组类型[]stack数组名heap声明后的内存情况inta[];int[]b;doubled[];
3、char[]ch;Studentstu[];anull数组的创建··一维数组的创建数组名=new数据元素类型[元素个数]示例stackheap创建后的内存情况inta[];a=newint[5];a0X12400000inta[]=newint[5];一维数组的创建·数组对象通过new语句实例化后,如果未明确给各数组元素赋初值,系统会根据数组中元素声明的数据类型自动初始化数组元素,即赋予默认数值。数组中不同基本数据类型元素的初始值如下表所示:8元素类型初始值元素类型初始值byte0short0int0long0Lfloat0
4、,0fdouble0,0dchar‘u0000’booleanfalsereferencenullnll数组的初始化·初始化在创建数组的同时就为数组元素分配空间并赋值数组类型数组名[]={元素1,元素2,…}}或数组类型数组名[]=new数据类型[]{元素1,元素2,…}}inta[]={1,2,3,4,5};或inta[]=newint[]{1,2,3,4,5};数组元素的访问·数组元素的访问Java中,数组元素的下标从0开始inta[];a=newint[5];数组名[元素下标]=元素值;a[0]=1;a[1]=2;a[2]
5、=3;a[3]=4;a[4]=5;数组的长度属性···数组的长度(length)必须>=0;length为只读。利用length遍历数组iint[t[]array;array=newint[4];数组☻练习说明下列创建数组的方法那些是正确的______。A)B)C)D)E)intdim[]=newint[4];intdim[4]=newint[];intdim[]=newint[]{1,2,3,4};chara[]={‘A’,‘B’};charc[]=“ABC”;答案:A、C、D数组的异常··数组中的常见错误数组越界异常(Array
6、IndexOutOfBoundsException)数组越界异常classArray_exception2{publicstaticvoidmain(Stringargs[]){inta[]=newint[3];a[0]=1;a[1]=2;a[2]=3;a[3]=4;System.out.println(a[3]);}}Contents123一维数组多维数组数组的操作多维数组·多维数组的概念Java中没有真正的多维数组,只有数组的数组锯齿数组Java中多维数组不一定是规则矩阵形式多维数组的声明·二维数组的声明数组类型数组名[][]或
7、数组类型[][]数组名数组类型[]数组名[]inta[][];int[[][]b;int[]c[];多维数组的创建·二维数组的创建数组名=new数据元素类型[行数][列数];或数组名=new数据元素类型[行数][];a=newint[3][4];a=newint[3][];a=newint[][4];//非法必须声明行的个数多维数组的初始化·二维数组的初始化数组类型数组名[][]={{元素11,元素12,…},{元素21,元素22,…}}或数组类型数组名[][]=new数据类型[][]{{元素11,元素12,…},{元素21,…}}int
8、a[][]={{1,2,3},{4,5},{7}};inta[][]=newint[][]{{1,2,3},{4,5},{7}};多维数组的初始化·二维数组的初始