简述
首先我们得明白在java中数组是对象,数组对象不是由哪个类实例化而来的,而是由jvm直接创建的,而这个直接创建的类继承Object方法。这和java里的基本类型相似,数组类型是jvm里的一个内建类型。本文将以int类型的一维数组作为演示。
定义与赋初值
在java中有三种定义数组的方式,一旦数组被定义,那么它的长度就被确定了,我们可以使用后两种方式在定义的同时给数组赋初值
int[] arr1 = new int[5]; int[] arr2 = {1,2,3,4,5}; int[] arr3 = new int[]{1,2,3};
数组的属性
数组的唯一属性就是length,数组在定义后长度确定不会改变。length就是数组的长度。
输出数组的每个元素
需要注意的是数组类没有重写object的toString方法,我们可以遍历数组进行输出
int[] arr = new int[]{1,2,3,4,5}; for (int i : arr) { System.out.println(i); }
或使用Array工具类的toString方法得到每个元素组合的字符串
int[] arr = new int[]{1,2,3,4,5}; System.out.println(Arrays.toString(arr));
数组的拷贝
我们可以调用继承自object类的clone方法进行数组的拷贝
int[] arr1 = new int[]{1,2,3,4,5}; int[] arr2 = arr1.clone(); arr2[1] = -1; System.out.println(Arrays.toString(arr1)); System.out.println(Arrays.toString(arr2));
可以看到这种拷贝是深拷贝,我们还可以使用Arrays工具类对数组进行一些实用的操作,详见: