5.9 数组
数组就是一个类型数据的集合,按一定的先后次序排列。每个元素有相应的下标表示。
java中的数组变量定义方法:
dataType[] + name//首选
dataType + name[] //也可以,但不是首选(当年c++的前朝余孽造成的哈哈哈哈哈哈)
也可用new来创建数组:
dataType[] + name = new dataType[SIZE]
同样,数组的索引是从0开始的,可用array.length来调取数组长度
初始化后只要分配了内存空间后都是被隐式初始化,有相应的初值,int是0,String是null等等。
注意几点:
- 数组也是对象,其数组元素相当于成员变量。
- java的数组是new出来的。
- 长度是创建出来后就不可变的,越界报错是ArrayIndexOutofBounds:x
数组的使用:
除了一般循环调用,还有以下方法:
-
JDK1.5以上可直接便利:
for(int array : arrays){ System.out.println(array); }
-
数组作为方法参数时:
public void printArray(int[] arrays){ for(int array:arrays){ System.out.print(array); } }
-
数组作为方法返回值时:
public int[] reverse(int[] arrays){ int[] result = new int[arrays.length]; for(int i=0;i<arrays.length;i++){ result[i]=arrays[arrays.length-i-1]; } }
除了以上一般的用法,还有多维数组需要注意:
定义方法:
int [][] arrays = new int [SIZE][SIZE]
多维数组的每一个元素都是一个低一维的数组。
5.10 Arrays类
接着是常用方便的关于数组的类:Arrays类,其详细的用法可以查看java帮助文档。
常用的是Arrays类中的Arrays.sort、Arrays.toString等等,和调用方法很像,如果需要类似方法但不想重新写可以调用Arrays类
Arrays类只是一个例子,还有很多可供使用的类,详细可以点击官网查看。