欢迎来到天天文库
浏览记录
ID:45237511
大小:262.16 KB
页数:50页
时间:2019-11-11
《java数组和字符串》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第4章数组和字符串数组数组说明一个数组是一系列的匿名变量,数组中的元素可通过下标来访问。在Java中,数组是对象。类Object中定义的方法都可以用于数组。数组说明程序员可以说明任何类型的数组,数组元素可以是基本类型,也可以是类类型,当然还可以是数组。例chars[];Pointpoints[];s的每个元素都是char类型的,points的每个元素都是类Point类型的。等价的数组说明char[]s;Point[]points;这两行说明与前面的说明完全等价。创建数组和所有对象一样,程序中使用new关键字创建数组,方括号中的数字表示数组元素个数。例:s=n
2、ewchar[20];points=newPoint[100];points[0]=newPoint();points[1]=newPoint();Java中没有静态的数组定义,数组的内存都是通过new动态分配的。points(a)PointsLength:100…(b)pointsLength:100…X:Y:(c)Point类定义如下:classPoint{intx,y;Point(intx1,inty1){x=x1;y=y1;}Point(){this(0,0);}}图说明说明语句:Point[]points;执行完毕,系统为变量points分配一个引
3、用空间。说明语句:points=newPoint[100];执行完毕,系统在内存中分配一个数组对象并把数组引用赋给变量points,说明语句:points[1]=newPoint();执行完毕,数组的状态图4-1(b)变为图4-1(c)。数组说明与数组创建可以合并:chars[]=newchar[20];Pointpoints[]=newPoint[100];数组变量的类型可以不同于所指向的数组类,但应该是它的父类。例如:Object[]points;points=newPoint[100];例如:Point[]points;points=newObject
4、[100];正确错误数组边界在Java中,数组下标从0开始。数组中的元素个数length是数组类中唯一的数据成员变量。使用new创建数组时系统自动给length赋值。数组一旦创建完毕,其大小就固定下来。程序运行时使用length进行数组边界检查。如果发生越界访问,则抛出一个异常。示例intlist[]=newint[10];for(inti=0;i5、素。数组的下标范围为0到length-1。当创建一个数组时,每个元素都被初始化。Java允许用初值来创建数组。示例Stringnames[]={″Georgianna″;″Jen″;″Simon″;″Tom″};静态初始化静态初始化可用于任何元素类型,初值块中每个位置的每个元素对应一个引用。names=newString[4];names[0]="Georgianna";names[1]="Jen";names[2]="Simon";names[3]="Tom";多维数组Java可以建立数组的数组(的数组……),由此得到多维数组。一般来讲,n维数组是n-1维6、数组的数组。说明多维数组时使用类型及多对方括号。多维数组可以从最高维起,分别为每一维分配内存。示例inttwoDim[][]=newint[4][];twoDim[0]=newint[5];twoDim[1]=newint[5];二维数组创建二维数组的一般格式为:typearrayN[][]=newtype[arrleng1][];arrayN[0]=newtype[arrleng2];arrayN[1]=newtype[arrleng2];......arrayN[arrleng1-1]=newtype[arrleng2];非矩阵数组在Java中还可以创建7、非矩阵数组。例4-4inttwoDim[][]=newint[4][];twoDim[0]=newint[2];twoDim[1]=newint[4];twoDim[2]=newint[6];twoDim[3]=newint[8];twoDim数组为4行,每行的元素个数分别为2,4,6,8个,各不相同。数组形式如下:XXXXXXXXXXXXXXXXXXXX该数组各维的长度如下twoDim.length=4twoDim[0].length=2twoDim[1].length=4twoDim[2].length=6twoDim[3].length=8二维矩阵数组8、说明二维矩阵数组的一般说明格式为typearrayN
5、素。数组的下标范围为0到length-1。当创建一个数组时,每个元素都被初始化。Java允许用初值来创建数组。示例Stringnames[]={″Georgianna″;″Jen″;″Simon″;″Tom″};静态初始化静态初始化可用于任何元素类型,初值块中每个位置的每个元素对应一个引用。names=newString[4];names[0]="Georgianna";names[1]="Jen";names[2]="Simon";names[3]="Tom";多维数组Java可以建立数组的数组(的数组……),由此得到多维数组。一般来讲,n维数组是n-1维
6、数组的数组。说明多维数组时使用类型及多对方括号。多维数组可以从最高维起,分别为每一维分配内存。示例inttwoDim[][]=newint[4][];twoDim[0]=newint[5];twoDim[1]=newint[5];二维数组创建二维数组的一般格式为:typearrayN[][]=newtype[arrleng1][];arrayN[0]=newtype[arrleng2];arrayN[1]=newtype[arrleng2];......arrayN[arrleng1-1]=newtype[arrleng2];非矩阵数组在Java中还可以创建
7、非矩阵数组。例4-4inttwoDim[][]=newint[4][];twoDim[0]=newint[2];twoDim[1]=newint[4];twoDim[2]=newint[6];twoDim[3]=newint[8];twoDim数组为4行,每行的元素个数分别为2,4,6,8个,各不相同。数组形式如下:XXXXXXXXXXXXXXXXXXXX该数组各维的长度如下twoDim.length=4twoDim[0].length=2twoDim[1].length=4twoDim[2].length=6twoDim[3].length=8二维矩阵数组
8、说明二维矩阵数组的一般说明格式为typearrayN
此文档下载收益归作者所有