数组的主要特点如下:
其中,数组元素的类型可以是基本类型,也可以是类或接口。
例如,要保存某批学生的成绩,可以定义一个数组score,声明如下:int score[]; 或者 int [] score;
2. 创建数组空间
- 给已声明的数组分配空间:
数组名 = new 数组元素类型 [元素个数];
例如,score = new int[10];
- 在声明数组的同时给数组规定空间,两步合并。
例如:int score [ ] = new int[10];
- “元素个数”不要求是常量。
3. 创建数组元素并初始化
格式如下:
- 格式1:类型 数组名[ ] ={ 初值表 };
- 格式2:类型 数组名[ ] = new 类型[ ]{ 初值表 };
- 例如:
- int score[ ] = {1,2,3,4,5,6,7,8,9,10};
- int score[ ]=new int[这里不能有大小] {1,2,3,4,5,6,7,8,9,10};
- score.length 指明数组score的长度。
二维数组
1. 二维数组声明
格式1:数组元素类型 数组名[ ][ ];
格式2:数组元素类型[ ][ ] 数组名;
例如:int a[][];2. 创建二维数组空间
二维数组看作是数组的数组,不要求二维数组每一维的大小相同
(1)直接为每一维分配空间,如:
int a[][] = new int [2][3];
(2)从最高维开始,按由高到低的顺序分别为每一维分配空间。如:
int a[][] = new int [2][]; a[0] = new int [3]; a[1] = new int [4];3.二维数组中求数组长度
- 要获取数组的行数,可以通过如下方式获得:
数组名.length
- 数组的列数则要先确定行,再通过如下方式获取列数:
4. 创建数组元素并初始化
- 元素是基本类型,系统将按默认规则赋初值。
- 元素类型为其它引用类型,则其所有元素为未赋初值状态(null)。
- 在数组定义时同时进行初始化,如:
int a[][] = {{1,2,3},{4,5,6}};
int b[][] = {{1,2},{4,5,6}};
- 更为常见的做法是在数组定义后通过循环语句给数组赋值。
public class Demo {
public static void main(String[ ] args) {
int [ ][ ] a = new int[4][5];
int sum=0;
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[i].length; j++) {
a [i][j] = (int)(Math.random()*10);
System.out.print(a[i][j] + "\t");
if (i==0||j==0||i==a.length-1||j==a[0].length-1)
sum += a[i][j];
}
System.out.println();
}
System.out.println("sum= " +sum);
}
}
7 9 3 7 8
8 1 5 2 8
4 2 1 5 4
1 1 1 2 6
sum= 69