Java数组
数组,作为一种容器,我认为是存放同一类型元素的无序排列的集合。在编写程序的过程中数组的使用是不可或缺的。在简单的程序设计中,数据和选择较少的情况下没有必要使用数组,但当这些变多的时候,数组的功能就显得尤为重要。数组可以直接通过下标定位获取或者设置数据,并且这种访问的方式是数据结构中速度最快的一种。数组还是数据结构中最简单的一种数据结构。但是数组也有他相对的缺点。由于长度固定,所以在使用的时候如果所需数据没有超过数组范围就会造成存储空间的浪费。如果超出下标范围,就会出现异常。但尽管存在这样的缺点,整体来看数组还是十分实用的。数组的使用能为程序的编写提供十分的便捷,在复杂的程序编写中不可能离得开数组,所以数组的使用时十分重要的。
在Java中数组属于引用数据类型。访问时直接由下标访问。数组只有一个唯一的属性,length。Length可以用来获取数组中能存储的元素个数。用法为: 数组名.length
注:Length的计数从1开始,数组下标的计数从0开始。
在存储空间的分配上,数组名和数组的首地址被存放在内存的栈空间,而数组的内容被分配在堆空间。数组操作中,只开辟了栈内的空间,数组是无法使用的,必须有指向堆内存才可以使用,开辟堆内存空间需要使用new关键字,之后就是将对内存的使用权交给对应的栈内存,一个堆内存空间可以被多个栈内存指向。二维数组元素空间的分配有时会分配为一个大空间,有时会分配为多个小空间,视内存空间而定。二维数组根据定义方式的不同,就有可能变为并不规则的数组,行数乘列数就不一定等于数组长度。下面介绍几种常用数组的定义方法。
一维数组的定义
1.数据类型 [ ] 数组名 = new 数据类型[长度];
2.数据类型 [ ] 数组名 = {元素a、元素b、...};
3.数据类型 [ ] 数组名 = new 数据类型[ ]{元素a、元素b、...};
4.数据类型 [ ] 数组名;
数组名 = new 数据类型[长度];
数组名 = new 数据类型[ ]{元素a、元素b、...};
错误写法:数组名 = {数据、...};
二维数组的定义
1.数据类型 [ ][ ] 数组名 = new 数据类型[行数][列数];
2.数据类型 [ ][ ] 数组名 = {{数据、...},...};
3.数据类型 [ ][ ] 数组名 = new 数据类型[ ][ ]{{数据、...},...};
4.数据类型 [ ][ ] 数组名;
数组名 = new 数据类型[行数][列数];
数组名 = new 数据类型[ ][ ]{{数据、...}、,...}; |
|