- 1、本文档共19页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六篇数组与枚举
第六篇 数组与枚举;数组属于引用型变量,创建数组需要经过:
声明数组
为数组分配变量;声明一维数组有下列两种格式:
数组的元素类型 数组名[];
数组的元素类型 [] 数组名;
声明二维数组有下列两种格式:
数组的元素类型 数组名[][];
数组的元素类型 [][] 数组名;
;1.1、声明数组;为数组分配元素的格式如下:
数组名 = new 数组元素的类型[数组元素的个数];
例如:boy = new float[4];
注:和C语言不同的是,Java允许使用int型变量的值指定数组的元素的个数,例如:
double number[]=new double[size];;数组通过索引符访问自己的元素
需要注意的是索引从0开始,因此,数组若有7个元素,那么索引到6为止,如果:
boy[7]=384. 98f;
程序可以编译通过,但运行时将发生ArraylndexOutOfBoundsException异常;数组的元素的个数称作数组的长度。
对于一维数组,“数组名.length”的值就是数组中元素的个数;
对于二维数组“数组名.length”的值是它含有的一维数组的个数;创建数组后,系统会给数组的每个元素一个默认的值,如,float型是0.0,布尔型是false。
在声明数组的同时也可以给数组的元素一个初始值。
也可以直接用若干个一维数组初始化一个二维数组,这些一维数组的长度不尽相同。;数组属于引用型变量,因此两个相同类型的数组如果具有相同的引用,它们就有完全相同的元素
如果使用了下列赋值语句(a和b的类型必须相同):
a=b;
那么,a中存放的引用和b的相同,这时系统将释放最初分配给数组a的元素,使得a的元素和b的元素相同;2.1 基于循环语句
for(声明循环变量:数组的名字) {
…
}
注:循环变量的类型必须和数组类型相同。;2.2 使用toString()方法
让Arrays类调用public static String toString (int[] a)方法,可以得到参数指定的一维数组a的如下格式的字符串表示:
[a[0],a[1] …a[a.length-1]]
例:
int [] a= {1,2,3,4,5,6};
Arrays.toString(a)得到的字符串是:
[1, 2, 3, 4 , 5, 6];如果两个类型相同的数组具有相同的引用,那么它们就有完全相同的元素
如果想把一个数组的元素中的值复制到另个一个数组中的元素中,后者元素值的改变不会影响到原数组元素的值,反之也是如此。
如果想实现这样的目的,显然不能使用数组之间进行引用赋值的方式;利用循环语句把一个数组的元素的值分别赋值给另个一个数组中相应的元素(C语言中经常使用的办法)。
Java提供的更简练的数组之间的快速复制:让System类调用方法
public static void arraycopy(sourceArray,int index1,copyArray,int index2,int length)
可以将数组sourceArray从索引index1开始后的length个元素中的数据复制到数组copyArray中,即将数组sourceArray中索引值从index1到index1+length-1元素中的数据复制到数组copyArray的某些元素中;接收数据的copyArray数组从第index2元素开始存放这些数据。
如果接收数据的数组copyArray不能存放下待复制的数据,程序运行将发生异常;JDK1.6后,Arrays类调用
public static double[] copyOf(double[] original,int newLength)
方法可以把参数original指定的数组中从索引0开始的newLength个元素复制到一个新数组中,并返回这个新数组,且该新数组的长度为newLength,如果newLength的值大于original的长度,copyOf方法返回的新数组的第newLength索引后的元素取默认值。类似的方法还有:
public static float[] copyOf(float[] original,int newLength)
public static int[] copyOf(int[] original,int newLength)
public static char[] copyOf(char[] original,int newLength);Arrays类调用相应的方法可以实现对数组的快速排序,比如,Array类调用
public static void sort(double a[])
方法可以把参数a指定的double类型数组按升序排序。
p
您可能关注的文档
最近下载
- 凯爱瑞-益生菌行业:探秘母乳菌LC40,婴童及女性的守护者.docx
- 交管12123学法减分复习题库500道含完整答案【全国通用】.docx
- GIS在审计中应用研究.doc
- 2023造口辅助器具的皮肤保护用品试验方法第1部分:尺寸、表面pH值和吸水性.pdf
- 危险废弃物管理知识培训.pptx VIP
- 2024版有房子有孩子离婚协议书.docx
- 人教版二年级生字表.pdf
- 集合论与图论 Set Theory and Graph Theory(姜守旭).ppt
- 备战2025年中考数学(全国)通关秘籍02 几何图形选填压轴题(含特殊三角形、特殊平行四边形、圆等综合问题)(原卷版).pdf VIP
- 大厦综合物业投标方案(技术标 1155页).doc VIP
文档评论(0)