Java 数组

数组是一个用来进行数组存储的单位。有一维数组,二维数组,你乃至更高维的数组

数组声明

1
2
int[] arr; //正确
int arr[] //也正确

声明arr为一个整形数组。以上只是声明了一个数组对象的引用值,并不直接创建存储空间。

数组初始化

1
2
arr = new int[2];
int i = arr.length();

创建了两个int类型的空间,其中arr中有一个数据成员,length 是final 变量。所以这种长度是不可变的.创建存储空间的同时,会将空间里面的变量都赋予初值0.

其他类型的也一样。

声明并且初始化

1
2
int[] arr = new int[2];
int[] arr = new int[]{1,2,3};

以上两者都可以。声明的同时进行初始化

多维数组

多维数组是二维以上,创建方式和声明方式与之前的1维所差不多。

类似如此

1
int[][] arr1 = new int[2][3];

这种是矩形的数组。也可以锯齿型的

比如

1
2
3
int[][] arr2 = new int[2][];
arr2[0] = a;
arr2[1] = arr;

输出[[1, 2, 3, 5], [1, 2, 3]]

foreach

主要用作遍历数组。对于一维和二维类似

1
2
3
for(int e: a){
System.out.print(e);
}

输出1235

1
2
3
4
5
for (int e[]: arr2){
for(int e1: e){
System.out.print(e1);
}
}

输出1235123